禁用keyup jquery

时间:2012-08-03 10:37:05

标签: jquery keyup

我想要做的是我有一个复选框,将打印两个输入类型相同..当未选中时,它允许有不同的..这里m使用以下代码...它的工作时复选框是点击..在第一个输入中给出的输入是什么,它放置相同但是。当我取消选中时,当我在某些内容中键入某些内容时仍会给我。是否有任何方法可以使用上面的方法禁用keyup函数dat ..

function oncheck(){
var c=$("#ubill").attr('checked');
if(c){
     var value = $("#single").val();
$("#single1").val(value);
$("input").keyup(function () {
var value = $("#single").val();
$("#single1").val(value);


});

}
else {
    var value='';
    $("#single1").val(value);
    // what should be here
}

}

提前致谢

2 个答案:

答案 0 :(得分:2)

function stickInputs()
{
    var value = $("#single").val();
    $("#single1").val(value);
}


function oncheck()
{
    var c = $("#ubill").attr('checked');
    if (c)
    {
        var value = $("#single").val();
        $("#single1").val(value);
        //bind a named function
        $("input").keyup(stickInputs);
    }
    else
    {
        var value = '';
        $("#single1").val(value);
        // unbind the function
        $("input").unbind("keyup", stickInputs);
    }
}

答案 1 :(得分:0)

我不确定我是否完全理解手头的问题。 JS Fiddle您的代码会有所帮助。但与此同时,我认为这是你需要的,而不是你的功能:

$(function () {
    $("input").keyup(function (e) {
        if($("#ubill").attr('checked')){
            var value = $("#single").val();
            $("#single1").val(value); 
        }
    });
});

我将你的if语句移动到keyup-callback中。如果选中ubill复选框,我们从一个输入中取值并将其放在另一个输入中,否则我们什么都不做。

从函数的命名,我认为在选中复选框时调用oncheck函数。没有必要这样做。我所做的是等待DOM准备就绪,然后我们将一个keyup-event监听器附加到输入,然后对每个键盘进行操作。