我有一个表格,当某些内容更新时,我需要在选择输入中更改该项目的名称。我正在使用它循环选项,但我无法弄清楚如何更改文本值。这是我试过的
$('#GroupID option').each(function () {
if ($(this).val() == currently_editing_group_id)
$(this).attr('text', $('#NewGroupName').val());
});
这是选择输入
<select id="PracticeGroupID" name="GroupID">
<option value="5">Test Group 1</option>
<option value="6">Test Group 2</option>
答案 0 :(得分:1)
您可以使用<option>
element的基本DOM属性.text
和.value
,如下所示:
$('#PracticeGroupID option').each(function () {
if (this.value == currently_editing_group_id)
this.text = $('#NewGroupName').val();
});
或者在选择器中:
$("#PracticeGroupID option[value='"+currently_editing_group_id+"']").each(function () {
this.text = $('#NewGroupName').val();
});
请注意,您需要#PracticeGroupID
作为选择器,因为#
适用于id
而非name
。
答案 1 :(得分:0)
如果您希望在选择的值更改时执行并执行操作,则应将您的功能绑定到change
,即使如此:
<强> HTML 强>
<select id="PracticeGroupID" name="GroupID">
<option value="5">Test Group 1</option>
<option value="6">Test Group 2</option>
</select>
<input type="text" id="updateMe" value="" />
<强>的JavaScript 强>
$('#PracticeGroupID').change(function() {
$('#updateMe').val('PracticeGroupID is ' + $(this).val());
}).change();
你可以在这里试试:http://jsfiddle.net/bTYWe/