如何在Javascript中使这个选择框工作,以便启用另一个选择框?

时间:2014-07-24 13:14:42

标签: javascript jquery html

所以我有一个选择框(company_selection),它是在Javascript中生成的,我需要它,所以当选择选项'GW'时,它启用另一个选择框(profile_selection)并允许你选择'ADickinson'选项当在另一个复选框中选择GW时,它不起作用,我不知道为什么。可能是显而易见的事情: - )

      $(document).ready(function () {
formatAppSelect();

});

这是我写的尝试完成所有这些工作的方法。变量公司只是我试图让它与之合作的静态选项,它们是选择框中的公司。 If语句是应该发生启用的地方,但是当在选择框中选择GW时没有任何反应,我需要做什么? :)不要认为我需要发布HTML,但如果问c:

我会
     function formatAppSelect() {

var Companies = [{ Company: "GW" }, { Company: "TP" }];

var companyselectHTML = "<select name='select_company' id='select_company' class='form_drop_down' data-role='none'>" +
                            "<option>None</option>";

var profileselectHTML = "<select name='select_profile' id='select_profile' class='form_drop_down' data-role='none'>" +
                            "<option>None</option>";


for (var p = 0; p < Companies.length; p++) {
    companyselectHTML += "<option value='" + Companies[p].Company + "'>" + Companies[p].Company + "</option>";
}

profileselectHTML += "</select>";
$("#profile_selection").html(profileselectHTML);

profileselectHTML += "</select>";
$("#company_selection").html(companyselectHTML);

if (companyselectHTML == "GW") {

    profileselectHTML += "<option value='ADickinson'>ADickinson </option>";

}


 }

2 个答案:

答案 0 :(得分:2)

$("#select_company").change(function(){//will be called when the select change of value
    if($(this).val() == "GW"){
        $("#select_profile").html("<option value='ADickinson'>ADickinson </option>");
    }else{ $("#select_profile").html(); }
});

答案 1 :(得分:1)

我希望这是你想要实现的目标

JQUERY CODE:

$(document).on('change', '#select_company', function () { if ($(this).val() == "GW") $('#select_profile').append('<option value="ADickinson" selected="selected">ADickinson </option>'); });

现场演示@ JSFIDDLE:

http://jsfiddle.net/dreamweiver/nZ8ma/6/

由于动态添加了下拉元素,因此您需要通过将事件附加到页面上的主根元素document来使用委派的事件处理程序。

快乐编码:)