我有几个
Javascript函数,看起来都像我.但表现得与我想要的不同.
我希望在评估输入值时,使用某些文本更新另一个元素.但是对于代码可重用性,我想将要更新的元素传递给函数,但是当我这样做时,当输入文本输入文本时,keyup()事件不会触发.
为什么是这样?
这是一个有效的,但我已明确指定要更新的元素.
键盘工作
$(function(){
$("#form1").keyup(function(){
var val = $(this).val();
if(val.length < 5){
$("#inputFeedback").html("Less then 5 chars");
}else{
$("#inputFeedback").html("More then 5 Chars!");
}
});
这是我想要做的,但keyup()事件将不起作用.
密钥不工作
var validate = function(feedback){
var val = $(this).val();
if(val.length < 5){
$(feedback).html("Less then 5 chars");
}else{
$(feedback).html("More then 5 Chars!");
}
}
$(function(){
$("#form1").keyup(validate($("#inputFeedback")));
});
注意:我也试过参数$(this)和“#inputfeedback”无济于事!
我也尝试使用经典的Javascript函数foo(bar){…}类型函数,但这与上面的上一个例子具有相同的效果.
我确信这是我做得不对或在这里理解的事情,但经过几个小时的搜索和阅读后,我找不到任何可以帮助我的东西!
谢谢
最佳答案 你绝对不能做那样的回调: