0

助けが必要です。

Jquery でイベント onchange をキャプチャするために、jsp にこのコードがあります。

jQ("#idExp").change(function() { 
        onchangeExp();
    });

function onchangeExp(){
    alert("onchangeExp");
    if(jQ("#idExp").val()!="-1"){
        recuperarDatosAF();
    }else{
        jQ("#comboAF").attr('disabled',true);
        jQ("#comboAF").val("-1");
    }
}

私はこれでコンボを埋めます:

 jQ("#idExp").html("");
 jQ("#idExp").append("<option value='-1'>"+""+"</option>");
 jQ.each(expedientes, function(i,value){
     jQ("#idExp").append("<option value='"+i+"'>"+value.codExpediente+" </option>"); 
 });

i の値は [0,1,2..] です

問題は、値が「-1」のコンボから空のオプションを選択すると、onchange 関数が実行されず、代わりにコンボから他のオプションを選択すると、onchange 関数が実行されることです。

コンボオプションの負の値を入れることはできませんか?

助けてくれてありがとう。

4

3 に答える 3

1

選択ボックスのデフォルト値は最初のオプションの値であるため、選択ボックスの値は変更されず、変更イベントはトリガーされません。

于 2012-11-27T09:27:01.983 に答える
0

このような値として実数の整数を追加してみてください

jQ(function() {
    var j = jQ('#idExp');
    j.append(jQ('<option/>').attr('value', -1));
    j.change(function() {
        if(j.val() == -1) {
            jQ("#comboAF")
                .attr('disabled',true)
                .val("-1");
        }
        else {
            recuperarDatosAF();
        } 
    }).trigger('change');
});
于 2012-11-27T09:31:47.697 に答える
0

オプションを追加するときに変更イベントをトリガーできます。

jQ("#idExp").append("<option value='-1'>"+""+"</option>").change();
于 2012-11-27T09:40:30.450 に答える