Настройка выпадающего значения Struts2 Multiselect с помощью jquery

0

У меня есть требование в моем проекте, где я получаю массив значений, разделенных запятыми из ajax, что мне нужно сделать, это показать выпадающие записи, выбранные путем установки значения параметров из массива в multiselect. мой код jquery выглядит следующим образом:

$.ajax({   
                type: 'POST',
                url: 'getInputAction',
                data: {'doc_id': doc_id,'dcr_id':dcrId},
                success: function(response) {
                    var input = $.trim(response);
                    var prim = input.split("#")[0];
                    var sec = input.split("#")[1];
                    var PrimVals = prim.split("@");
                    var secVals = sec.split("@");

$ ( "# SEC1 @1") знач (secVals).

                    $.each(PrimVals, function(i,e){
                        $("#PRIM1@1").find("option[value="+e+"]").prop("selected","selected");
                    }); 
                }
}); 

и Jsp-код

<td>
    <s:select theme="simple"  tabindex="8" id="PRI1@1" cssClass="mediumSelect" cssStyle="width:50%;" list="prodList" name="DETAILED1" multiple="true" required="true" />
</td>

Выше выделенный код не работает. Пожалуйста, помогите мне, спасибо

  • 0
    Вы можете опубликовать свои секвалы? Это значения, разделенные запятыми?
  • 0
    Если вы используете struts2, почему бы вам не попробовать Struts2 jquery Drop down ?
Показать ещё 2 комментария
Теги:
struts

1 ответ

0

Надеюсь, вам нужно обновить раскрывающийся список мультиселектов после установки в нем значений. Как это,

Вот ваша часть html,

<select name="test" id="testId" multiple>
    <option value="1">Value 1</option>
    <option value="2">Value 2</option>
    <option value="3" selected>Value 3</option>
    <option value="4" selected>Value 4</option>
</select>

И вот ваша обновленная часть javascript,

$( document ).ready(function() {
    var values= [1,2,3];
    var newArray = [];
    for (var i = 0, l = values.length; i <l; i++){
        newArray.push(values[i]);
    }
    $("#testId").val(newArray);
    jQuery("#testId").multiselect("refresh");
});

Вы можете найти свою рабочую ДЕМО.

Надеюсь это поможет.

  • 0
    @Amol Пожалуйста, убедитесь, что ваш массив не содержит повторяющихся значений, таких как 1,2,3,0,0 также null значения.
  • 0
    спасибо, у меня уже есть строка как 1 @ 2 @ 3 @ 0 @ 0 после разбиения, это даст массив [1,2,3,0,0], теперь после получения массива я не могу разделить его как values.split ( ",") как его окончательный массив получил после разбиения;
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню