当我的 JQuery 日期选择器选择开始日期和结束日期时,我需要调用这个函数:
function showUser() {
// Retrieve values from the selects
var DateFrom = document.getElementById('DateFrom').value;
var DateTo = document.getElementById('DateTo').value;
if (dtd=="" || dtm == "" || dfd == "" || dfm == "") {
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","/StreetHailDrivers.php?DateFrom="+DateFrom+"&DateTo="+DateTo,true);
xmlhttp.send();
}
这是我的日期选择器:
$(function() {
$('.datepicker').datepicker({ onSelect: showUser(), minDate: -90, maxDate: "+1D" });
});
如果我取出 onSelect: showUser()
日期选择器工作正常,但不发布数据,但如果我包含 onselect,日期选择器不起作用。没有下拉。
我还尝试了 html 中的 onchange 事件:
<input type="text" class="datepicker" name="DateTo" id="DateTo" onchange="showUser()" />
我应该怎么做才能让它正常工作?
最佳答案
主要问题是函数 showUser 未在分配日期选择器的范围可用的范围内定义。结果很可能是您可以在控制台中看到的错误:“Uncaught ReferenceError: showUser is not defined”。当发生错误时,所有脚本的执行都会停止,并且不会构造日期选择器。您应该确保日期选择器对象有权访问此函数。
我相信它需要一个指向该参数的函数的指针。因此它可能应该是
onSelect: showUser
使用 onSelect: showUser()
会将 onSelect
的值设置为未定义的 showUser
的返回值。
关于javascript - Jquery Datepicker onselect调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21126073/