改变事件后,Dom没有改变

时间:2014-01-28 10:23:47

标签: javascript jquery

这是代码。 “改变”工作正常。但是在更改#record_record_type元素的值之后,“On focus”不起作用,因为#record_record_type的值仍然相同。请帮我。

$(document).ready(function () {
    var current = "A";
    $("#record_record_type").on('change keypress paste focus textInput input', function() {
        if($("#record_record_type").val() == "TXT") {
            $('#numeru').html('<textarea cols="40" id="record_ttl" name="record[data]" rows="20"></textarea>');
            $("#record_record_type").val("TXT");
            current = "TXT";
        } else if($('#record_record_type').val() == "MX") {
            $('#numeru').html('<input id="record_data" name="record[data]" size="30" type="text">');
            $('#numeru').append('<label>Приоритет MX</label><input id="record_data" name="record[mx_priority]" size="30" type="text">');
            current = "MX";
        } else {
            $('#numeru').html('<input id="record_data" name="record[data]" size="30" type="text">');
        };
    });

    $("#record_data").focus(function() {
        if($("#record_record_type").val() == "A"){
            $("#new_record").validate({
                rules:{
                    "record[data]": {
                        required:true,
                        ipv4: true
                    }
                },
                submitHandler: function(form){
                    showLoadingScreen();
                    $(form)
                        .submit()
                        .always(function(){ hideLoadingScreen() });
                }
            });
        }
    });
});

但是

3 个答案:

答案 0 :(得分:0)

$("#record_record_type").on('change keypress paste focus textInput input', function() {
  //Put this in the end after your condition checks
  $("#record_record_type").blur();
}

答案 1 :(得分:0)

您可以尝试使用而不是此行:

$("#record_data").focus(function() {

$("#record_data").on('focus', function() {

它会在更改后立即作出反应。

答案 2 :(得分:0)

你也可以使用这个:

$("#record_record_type").on('change keypress paste focus textInput input', function() {
  //Put this in the end after your condition checks
  $("#record_record_type").blur();
  $("#record_data").focus();
}