Ajax请求不起作用

时间:2013-08-16 10:07:41

标签: jquery ajax http

我正在尝试使用ajax从db获取数据。当从内联日历中选择日期时,将捕获该日期并进行查询并且我将显示所选日期的假日状态。  但是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");    
                    }
                }
            });
        }
    });
});    

2 个答案:

答案 0 :(得分:1)

<{3>}中的

dataType参数指的是您希望从服务器返回的数据类型作为ajax响应。你在调用json时设置了这个。

但该行

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

好像您希望得到正常的texthtml回复。如果响应无效json,则ajax调用将不起作用。否则,您删除dataType : "json",行并让ajax实用程序查找默认文本响应。

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

答案 1 :(得分: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");    
                    }
                }
            });