0

我正在尝试使用 ajax 从数据库中获取数据。当从在线日历中选择日期时,将捕获该日期并完成查询并显示所选日期的假期状态。但是ajax请求不起作用,如何知道它是否起作用。

我的代码是

$(function () {
    $("#divCalendar").datepicker({
        dateFormat: "mm-dd-yy",
        onSelect: function (selectedDate) {
            //alert("You clicked on " + selectedDate.toString());
            var dataString = 'sdt='+ selectedDate.toString();
            //alert("You clicked on " + dataString);
            $.ajax({
                type: "POST",
                url:"demotest.php",
                data: dataString,
                dataType : "json",
                success:function(data){
                    if(data != "ERROR")  
                    {
                        $("#div1").html(data);
                    }
                    else
                    {
                        $("#div1").html("nothing found");    
                    }
                }
            });
        }
    });
});    
4

2 回答 2

1

$.ajax中,dataType参数是指您期望从服务器作为 ajax 响应返回的数据类型。您在对 json.js 的调用中设置它。

但是线

$("#div1").html(data);

似乎您正在期待正常texthtml响应。如果响应不是有效的 json,则 ajax 调用将不起作用。否则,您删除该dataType : "json",行并让 ajax 实用程序查找默认文本响应。

您可以通过检查浏览器控制台(chrome 检查器/firebug)来获得有关 ajax 调用中遇到的错误的提示。

于 2013-08-16T10:16:39.850 回答
0

dataType:属性表示要作为服务器响应返回的数据类型。但是从你的编码来看,你的响应数据似乎是一个简单的字符串或文本。所以你可以这样给出,dataType:"text,"或者你可以忽略datatType属性,因为默认情况下它是文本。

试试这个,它正在工作

$.ajax({
                type: "POST",
                url:"demotest.php",
                data: {
                       us:"hi"
                        },

               success:function(data){
                    if(data != "ERROR")  
                    {
                        $("#div1").html(data);
                    }
                    else
                    {
                        $("#div1").html("nothing found");    
                    }
                }
            });
于 2013-08-16T11:47:21.960 回答