从 $(document).ready(); 调用时未触发自定义事件;
Custom event not fired when called from $(document).ready();
我有以下代码
$(document).ready(function () {
VerifyCustomerFilter();
$("#ToDateStor").on("DateSet", function () {
...
);
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This does not work
}
}
当我在函数 'VerifyCustomerFilter ()' 中的条件为真时,无法触发我创建的自定义事件。
但是当我在我的 DatePicker 事件中触发事件时,它完美地工作:参见
$("#calTo").datepicker({
showButtonPanel: false,
onClose: function (dateText, inst) {
var ToDate = $(this).val().toString();
$('#ToDateStor').html(ToDate).trigger('DateSet'); // This works!
}
});
也已经尝试使用 triggerHandler()
。
我应该做错什么?
您在将侦听器绑定到元素之前触发您的事件,尝试
$(document).ready(function () {
// add the listener
$("#ToDateStor").on("DateSet", function () {
...
});
// define the function
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This does not work
}
}
// call the function
VerifyCustomerFilter();
});
$(document).ready(function () {
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This should work now
}
$("#ToDateStor").on("DateSet", function () {
...
);
//First bind the event,then call it
VerifyCustomerFilter();
}
您在绑定事件之前调用了函数。
我有以下代码
$(document).ready(function () {
VerifyCustomerFilter();
$("#ToDateStor").on("DateSet", function () {
...
);
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This does not work
}
}
当我在函数 'VerifyCustomerFilter ()' 中的条件为真时,无法触发我创建的自定义事件。
但是当我在我的 DatePicker 事件中触发事件时,它完美地工作:参见
$("#calTo").datepicker({
showButtonPanel: false,
onClose: function (dateText, inst) {
var ToDate = $(this).val().toString();
$('#ToDateStor').html(ToDate).trigger('DateSet'); // This works!
}
});
也已经尝试使用 triggerHandler()
。
我应该做错什么?
您在将侦听器绑定到元素之前触发您的事件,尝试
$(document).ready(function () {
// add the listener
$("#ToDateStor").on("DateSet", function () {
...
});
// define the function
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This does not work
}
}
// call the function
VerifyCustomerFilter();
});
$(document).ready(function () {
function VerifyCustomerFilter() {
if(toDate != "")
$("#ToDateStor").trigger('DateSet'); //This should work now
}
$("#ToDateStor").on("DateSet", function () {
...
);
//First bind the event,then call it
VerifyCustomerFilter();
}
您在绑定事件之前调用了函数。