gpt4 book ai didi

javascript - 如何通过Jquery显示多个

转载 作者:行者123 更新时间:2023-11-28 12:22:11 24 4
gpt4 key购买 nike

我几乎没有使用 Jquery(甚至 Javascript)的经验,但经过一些研究后,我似乎需要它。我有一个 HTML 表单来选择国家和地区,但我需要选择国家/地区来确定填充区域列表的内容。

<select name="search_country" id="scid">
<option value="">Select a country</option>
<option value="cyprus">Cyprus</option>
<option value="turkey">Turkey</option>
<option value="greece">Greece</option>
</select>
<select name="search_region" id="srid">
<option value="">Select a region</option>
</select>

浏览此网站后,我发现一些代码几乎完全可以工作,但是当选择一个国家/地区时,只有一个区域(顶部选项)显示在列表中。

$(function(){
$("#scid").change(function(){
var options = '';
if($(this).val().indexOf('cyprus') > -1) {
options = '<option value="paphos">Paphos</option>';
'<option value="larnaca">Larnaca</option>';
'<option value="nicosia">Nicosia</option>';
'<option value="agia_napa">Agia Napa</option>';
}
else if ($(this).val().indexOf('turkey') > -1) {
options = '<option value="ankara">Ankara</option>';
}
else if ($(this).val().indexOf('greece') > -1) {
options = '<option value="athens">Athens</option>';
'<option value="rhodes">Rhodes</option>';
}
$('#srid').html(options); }); });

我该怎么做才能使所有适当的区域在选择国家/地区后填充第二个下拉列表?

谢谢。

最佳答案

从技术上讲,这不是语法错误,但对于您想要完成的任务来说,这是不正确的语法:

options = '<option value="paphos">Paphos</option>';
'<option value="larnaca">Larnaca</option>';

这是两个单独的声明。通过仅修改空白来更清楚地说明:

options = '<option value="paphos">Paphos</option>';

'<option value="larnaca">Larnaca</option>';

第一个将 options 变量设置为该字符串。第二条语句本身只是一个字符串,没有执行任何操作。因此,在执行这两个语句之后,options 仅被设置为第一个值。

我认为您想要连接您的值:

options = '<option value="paphos">Paphos</option>' +
'<option value="larnaca">Larnaca</option>';

或者,另一种选择:

options = '<option value="paphos">Paphos</option>';
options += '<option value="larnaca">Larnaca</option>';

这将执行两个语句的串联。实际上,您选择如何执行此操作取决于您认为更具可读性且更易于维护。

关于javascript - 如何通过Jquery显示多个<options>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35589204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com