jquery / php выбрать несколько выбранных опций из массива php в jquery - PullRequest
0 голосов
/ 08 ноября 2010

Я пытаюсь создать список множественного выбора с выбранными параметрами на основе массива php, в jquery.Я не могу заставить его работать, это мой код:

Мой список выбора:

<select name="modules[]" id="modules" class="inputbox" size="10" multiple="multiple">
  <option value="1">Module 01</option>
  <option value="2">Module 02</option>
  <option value="3">Module 03</option>
</select>

Мой PHP / JQuery (попытка):

<script type="text/javascript" language="javascript">
<?php 
$modules = explode(';',$row->modules);
if (is_array($modules)) {
    foreach($modules as $moduleID) { 
    ?>
    jQuery("#modules").val("<?php echo $moduleID; ?>");
    <?php 
    };
} else { 
?>
jQuery("#modules").val("<?php echo $row->modules; ?>");
<?php 
};
?>
</script>

Что выглядит (обычный jquery):

<script type="text/javascript" language="javascript">
  jQuery("#modules").val("3");
  jQuery("#modules").val("1");
</script>

И это мой массив php (после взрыва):

Array
(
    [0] => 3
    [1] => 1
)

Ответы [ 2 ]

3 голосов
/ 08 ноября 2010

Вам нужно передать массив в val ():

<script type="text/javascript">
  jQuery("#modules").val(["3","1"]);
</script>

Из документов jQuery :

Этот метод обычно используется для установки значений полей формы. Для <select multiple="multiple"> элементов несколько <option> s можно выбрать, передав массив.

1 голос
/ 08 ноября 2010

У вас есть какая-то альтернатива для пользователей, у которых отключен Javascript? Это не всегда уместно, и количество пользователей, на которых это повлияет, постоянно уменьшается (в настоящее время пользователи мобильных телефонов, вероятно, составляют самую большую долю), но ИМО все еще стоит усилий.

...