gpt4 book ai didi

javascript - JQuery 根据下拉菜单中的选择更改值

转载 作者:行者123 更新时间:2023-11-30 10:08:30 25 4
gpt4 key购买 nike

我尝试使用 JQuery 创建一个下拉菜单,然后根据人们在菜单中选择的内容更改搜索输入元素上的特定值。

到目前为止,我已经想出了如何确定我需要更改的值。我还得到了它,如果有人从菜单中做出任何选择,它会将搜索输入值更改为一个特定值:

<div> 
<form action="setColor" method="post">
<fieldset>
<label for="color">Select A Color</label>
<select name="color" id="color">
<option>Blue</option>
<option selected="selected">Red</option>
<option>Yellow</option>
</select>
</fieldset>
</form>
</div>


<script>

$(function() {
$('select[name="color"]').change(function() {
$('input[name="ancestorId"]').val("9999");
});
});

</script>

我现在需要的是根据菜单选择设置值的东西,匹配如下:

Blue = 9999
Red = 8888
Yellow = 7777

我仍在查看示例并将继续尝试,但有点卡住了。任何建议表示赞赏。

最佳答案

您应该将值赋值放在选项元素中,因为它们就是为此而设计的:

<select name="color" id="color">
<option value="9999">Blue</option>
<option value="8888" selected="selected">Red</option>
<option value="7777">Yellow</option>
</select>

脚本几乎保持不变,除了我在选择器中使用了元素 ID 而不是它们的名称(假设您的祖先元素具有这样的 ID):

$(function() { 
$('#color').change(function() {
$('#ancestor').val($(this).val());
}).change(); // Trigger the event
});

请注意,链接的 .change() 调用将触发刚刚分配的 change 事件,以便在页面加载时预选项目的值将填充到文本字段中。

查看实际效果:

$(function() { 
$('#color').change(function() {
$('#ancestor').val($(this).val());
}).change(); // Trigger the event
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select name="color" id="color">
<option value="9999">Blue</option>
<option value="8888" selected="selected">Red</option>
<option value="7777">Yellow</option>
</select>

<input id="ancestor" type="text" />

关于javascript - JQuery 根据下拉菜单中的选择更改值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27853281/

25 4 0