Jquery 在文本框中输入文本时,下拉菜单的值应更改

Jquery 在文本框中输入文本时,下拉菜单的值应更改,jquery,html,css,Jquery,Html,Css,你好,, 我举一个例子,假设我们有两个州,其中有两到三个城市,当我在文本框中键入一个城市名称时,该州将自动从下拉列表中选择。 我是jquery的新手,请帮帮我 <div>City<span class="red">*</span> <input type="text" placeholder="City" id="city" name="city" required/> </div> <div>State<span

你好,, 我举一个例子,假设我们有两个州,其中有两到三个城市,当我在文本框中键入一个城市名称时,该州将自动从下拉列表中选择。 我是jquery的新手,请帮帮我

<div>City<span class="red">*</span> 
<input type="text" placeholder="City" id="city" name="city" required/>
</div>
<div>State<span class="red">*</span> 
<select name="state" id="state">
    <option id="st1" value="st1">State1</option>
    <option id="st2" value="st2">State2</option>
    <option id="st3" value="st3">State3</option>
    <option id="st4" value="st4">State4</option>
</select>
</div>

$(document).ready(function () {

if ($("#city").val() == citya || $("city").val() == cityb || $("city").val() == cityc) {
    alert("State1");
} else if ($("#city").val() == cityd || $("city").val() == citye || $("city").val() == cityf) {
    $("#state").keyup("st2");
} else if ($("#city").val() == cityg || $("city").val() == cityh || $("city").val() == cityi) {
    $("#state").keyup("st3");
} else if ($("#city").val() == cityj || $("city").val() == cityk || $("city").val() == cityl) {
    $("#state").keyup("st4");
}

});
城市*
国家*
状态1
状态2
状态3
状态4
$(文档).ready(函数(){
if($(“#city”).val()==citya | |$(“city”).val()==cityb | |$(“city”).val()==cityc){
警报(“状态1”);
}如果($(“#city”).val()==cityd | |$(“city”).val()==citye | |$(“city”).val()==cityf){
$(“#state”).keyup(“st2”);
}如果($(“#city”).val()==cityg | |$(“city”).val()==cityh |$(“city”).val()==cityi){
$(“#state”).keyup(“st3”);
}else if($(“#city”).val()==cityj | |$(“city”).val()==cityk | |$(“city”).val()==cityl){
$(“#state”).keyup(“st4”);
}
});
给你:

你需要在钥匙上检查你的城市。因此,当我输入文本时,如果我输入
citya
它将
警报(“State1”)将函数附加到元素时,使用
$(this)
访问该元素。而且,
==
==
更好。在网上搜索javascript的操作符

    $('#city').keyup(function() {
        if ($(this).val() === 'citya' || $(this).val() === 'cityb' || $(this).val() === 'cityc') {
            alert("State1");
        } else if ($(this).val() === 'cityd' || $(this).val() === 'citye' || $(this).val() === 'cityf') {
            $("#state").val("st2");
        } else if ($(this).val() === 'cityg' || $(this).val() === 'cityh' || $(this).val() === 'cityi') {
            $("#state").val("st3");
        } else if ($(this).val() === 'cityj' || $(this).val() === 'cityk' || $(this).val() === 'cityl') {
            $("#state").val("st4");
        }
    });

这是一个正在工作的JSFIDLE

cityl从哪里来?这些是变量还是明文?如果是明文,则在其周围添加引号或双引号,如
'citya'
,并使用
$(“#state”).val(“st4”)而不是
$(“#状态”).keyup(“st4”)