jQuery - 如果选中的选项包含字符串,则更改其他字段的值

时间:2014-06-11 14:57:33

标签: jquery indexof

就像标题所说,我要做的是:如果所选(下拉)选项包含某个字符串,我想更改另一个字段的值。通常我会用一个开关来做这个,但是一些下拉选项的值是相同的(它们是更大的表单组合的一部分,我不能直接编辑选项,因为它是生成的表单)。

目前它不起作用。这是我的jQuery:

$(document).ready(function(){

$('#ballform_programid').change(function(e) {
    var sel = $('#ballform_programid')[0];
   message_index = sel.options[sel.selectedIndex].text;

  if (message_index.toLowerCase().indexOf('barbara') >= 0){
                $("#ballform_campusid").val('403');
});

});

HTML:

<select name="programid" id="ballform_programid" class="pf_dropdown">
    <option selected="selected" value="">Choose one</option>
    <option value="63">degree at Santa Barbara</option>
    <option value="63">degree at Ventura</option>
    <option value="76">Online degree (M.L.S.)</option>
</select>

<input name="campusid" id="ballform_campusid" value="00" />

Fiddle

2 个答案:

答案 0 :(得分:1)

ìf之后你的胡子丢失了。我插入它并且小提琴工作正常。

$(document).ready(function(){

    $('#ballform_programid').change(function(e) {
        var sel = $('#ballform_programid')[0];
        message_index = sel.options[sel.selectedIndex].text;

        if (message_index.toLowerCase().indexOf('barbara') >= 0){
            $("#ballform_campusid").val('403');
        }
    });
});

答案 1 :(得分:0)

由于您使用的是jQuery,请使用jQuery:

$('#ballform_programid').change(function (e) {
    if ($(this).find(":selected").text().toLowerCase().indexOf('barbara') >= 0) $("#ballform_campusid").val('403');
});

<强> jsFiddle example