javascript - 如何使用 JQuery 在模糊() 上调用此函数?

标签 javascript jquery

我有这个功能,见下文:

function checkStartPrice (){
    if ($('#StartingPrice')[0].value.length == 0){
        alert("The 'Starting Price' cannot be left empty!");
        return false;
     } else {
        var BuyItNowPrice = parseFloat($('#BuyItNowPrice').val());
        var StartingPrice = parseFloat($('#StartingPrice').val());
        var Reserve = parseFloat($('#Reserve').val());
        if((BuyItNowPrice <= StartingPrice) && (StartingPrice > 0)){
            alert("The 'Buy It Now' price must be higher...");
            return false;
        }
        if((Reserve <= StartingPrice) && (StartingPrice > 0)){
            alert("Your 'Reserve Price' must be higher...");
            return false;
        }
        return true;
    }
}

问题:如何在模糊时调用它?我尝试了下面的代码,但它似乎不起作用:

$('#StartingPrice').blur(function(){
    checkStartPrice();
});

最佳答案

这是正确的调用方式。
它可能失败的唯一原因是调用 .blur() 时 #StartingPrice 元素不存在。

如果页面中存在,请使用:

$(document).ready(function() {
    $('#StartingPrice').blur(checkStartPrice)
})

如果是通过 AJAX 动态添加的,请使用:

$(document).ready(function() {
    $('#StartingPrice').live('blur',checkStartPrice)
})

请注意,第二种解决方案至少需要 jQuery 1.4.1

关于javascript - 如何使用 JQuery 在模糊() 上调用此函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5790185/

相关文章:

php - smarty 错误(模板中的语法错误)

javascript - 如何获取Flot Chart的当前条宽?

javascript - 有时 array.length 只能在 .push() 之后起作用(为什么?)

Javascript 将 rel 属性分配给变量

javascript - 如何改变reactjs中的状态

javascript - 由于 CORS 问题,AJAX POST 未使用 body-parser 向express.js 服务器发送请求

javascript - javascript 到 jquery 的转换(getelementbyid、标记名、innertext、innerhtml)

javascript - 隐藏/显示相关元素

javascript - 使用 jquery/ajax 提交循环表单?

javascript - 无换行的文本区域的动态宽度