javascript - Jquery Datepicker onselect调用函数

标签 javascript jquery html jquery-ui datepicker

当我的 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()" /> 

我应该怎么做才能让它正常工作?

最佳答案

jsFiddle Demo

主要问题是函数 showUser 未在分配日期选择器的范围可用的范围内定义。结果很可能是您可以在控制台中看到的错误:“Uncaught ReferenceError: showUser is not defined”。当发生错误时,所有脚本的执行都会停止,并且不会构造日期选择器。您应该确保日期选择器对象有权访问此函数。

我相信它需要一个指向该参数的函数的指针。因此它可能应该是

onSelect: showUser

使用 onSelect: showUser() 会将 onSelect 的值设置为未定义的 showUser 的返回值。

关于javascript - Jquery Datepicker onselect调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21126073/

相关文章:

javascript - JavaScript 中的双感叹号运算符和 Boolean() 有什么区别?

php - 在 Stripe 中使用优惠券代码

javascript - Require.js 甚至在 IF 语句中加载模块

javascript - 在 AJAX 回调中更改按钮的文本和颜色

html - 网站样式在错误的视口(viewport)宽度下发生变化

html - 如何通过 xpath 或 css 选择器在 map 上定位元素

javascript - 简单的 Javascript 悬停

javascript - 通过 Jquery data() 附加时以及直接通过 HTML 中的数据属性附加时检查 HTML 元素中的 data()

html - 重新定位相关子 div 时调整父 div 的高度

javascript - 使用其值选择动态复选框