Javascript 选择不正确的值HTML

Javascript 选择不正确的值HTML,javascript,jquery,Javascript,Jquery,我有HTML: <select class="form" id="select" name="select"> <option>number1</option> <option>number2</option> </select> <select name="organisation" class="form" id="cent" required>

我有HTML:

 <select class="form" id="select" name="select">
            <option>number1</option>
            <option>number2</option>
    </select>

 <select name="organisation" class="form" id="cent" required>
            <option value="1">UK</option>
            <option value="2">SPAIN</option>
</select>

问题是,当我选择选项编号1时,第一个选择值为1和2,但当我选择值为1的英国并单击提交时,它将发送第二个选择的第一个选项的值47

您正在尝试循环一个选择框

$("#select").each(function () {
只能有一个id为select的元素。您应该检查以下内容:

if ($("#select").value() == "1") { ..

而且您的第一个选择选项中甚至没有值。

您正在尝试循环一个选择框

$("#select").each(function () {
只能有一个id为select的元素。您应该检查以下内容:

if ($("#select").value() == "1") { ..

而且您的第一个选择选项中甚至没有值。

在切换选择时尝试禁用相反的选择。如果窗体上的控件的显示设置为“无”,则仍将提交该控件,但如果该控件被禁用,则不会随窗体一起提交

$(document).ready(function() {
    $("select").change(function () {
        if (this.value == "number1") {
            $('#cent').show().prop("disabled", false);
            $('#ssip').hide().prop("disabled", true);
        }
        if (this.value == "number2") {
            $('#cent').hide().prop("disabled", true);
            $('#ssip').show().prop("disabled", false);
        }
    });
});

JS Fiddle:

在切换选择时尝试禁用相反的选择。如果窗体上的控件的显示设置为“无”,则仍将提交该控件,但如果该控件被禁用,则不会随窗体一起提交

$(document).ready(function() {
    $("select").change(function () {
        if (this.value == "number1") {
            $('#cent').show().prop("disabled", false);
            $('#ssip').hide().prop("disabled", true);
        }
        if (this.value == "number2") {
            $('#cent').hide().prop("disabled", true);
            $('#ssip').show().prop("disabled", false);
        }
    });
});

JS Fiddle:

我可能会建议这样做

$('#select').on('change', function() {

   var selected = this.selectedIndex;

   $('.orgs').hide();

   switch(selected) {
        case 1:
            $('#ssip').show();
            break;
        case 2: 
            $('#cent').show();
            break;
    }
});

下面是一个工作示例

我可能会提出类似的建议

$('#select').on('change', function() {

   var selected = this.selectedIndex;

   $('.orgs').hide();

   switch(selected) {
        case 1:
            $('#ssip').show();
            break;
        case 2: 
            $('#cent').show();
            break;
    }
});

下面是一个工作示例

,您使用ID select循环每个元素?我不明白。。只能有一个id为select的元素。这里不需要循环。改为绑定到事件,并将显示/隐藏逻辑应用于jquery选择器返回的集合。是否使用ID select循环每个元素?我不明白。。只能有一个id为select的元素。这里不需要循环。改为绑定到事件,并将显示/隐藏逻辑应用于jquery Selector返回的集合。为什么循环id为select的元素?应该是$select。each@Hardy哎呀!我完全错过了each,认为它是一个变更事件处理程序。@HadesNebula很高兴我能帮上忙@每个都是正确的,因为它的意思是不同的,只是显示了你的确切选择want@HandesNebula是 啊循环一个元素。。为什么不直接像$'select'.value.那样读取元素呢。。难以置信..为什么循环id为select的元素?应该是$select。each@Hardy哎呀!我完全错过了each,认为它是一个变更事件处理程序。@HadesNebula很高兴我能帮上忙@每个都是正确的,因为它的意思是不同的,只是显示了你的确切选择want@HandesNebula是 啊循环一个元素。。为什么不直接像$'select'.value.那样读取元素呢。。难以置信。。