如何使用jquery mobile更新2个具有相同选项的选择框

时间:2013-01-11 04:42:01

标签: jquery

使用jquery / jqm我需要为2个选择框添加一个选项。我可以得到一个更新,但不能更新。如何让另一个更新。 注意名字/ id中的S. 列出的第二个.append是更新的。

HTML:

<input type="button" name="Goal_WeightVar" id="Goal_WeightVar" value="doit">
<br>
<select name="grouplist" id="grouplist">
  <option value="choose">Choose a Group</option>
  <option value="#groupid#">option1</option>
</select>
<select name="groupslist" id="groupslist">
  <option value="choose">Choose a Group</option>
  <option value="#groupid#">option1</option>
</select>

脚本:

$('#Goal_WeightVar').live('click', function() {
  var newgroupcode = $('<option value="11">11<option>');
  $('#groupslist').append(newgroupcode).trigger("create");
  $('#grouplist').append(newgroupcode).trigger("create");
  $('#groupslist').selectmenu();
  $('#groupslist').selectmenu('refresh');
  $('#grouplist').selectmenu();
  $('#grouplist').selectmenu('refresh');
});

的jsfiddle http://jsfiddle.net/ThMnq/1/

1 个答案:

答案 0 :(得分:1)

您需要使用clone()制作对象的副本并添加不同的对象,因为在两个地方不能存在一个对象。

<强> Live Demo

$('#Goal_WeightVar').live('click', function() {
  var newgroupcode = $('<option value="11">11<option>');
  $('#groupslist').append(newgroupcode).trigger("create");
  $('#grouplist').append(newgroupcode.clone()).trigger("create");    
});