0

因此,我使用 jquery 对服务器上的 php 脚本进行 ajax 调用。

但是,由于某种原因,我无法弄清楚,没有发送查询字符串。在 $_GET 对象上使用 var_dump() 表明它是一个空字符串,Chrome 的网络活动开发工具表明没有发送任何字符串。

$.ajax({
            "url":"../script/content.php",
            "settings": {
                "dataType":"html",
                "type":"GET",
                "data":{
                    "id":$(this).prop('id')
                }
            }
        }).done( function(msg) {
            //$('#debug').html(msg);
            $('#dialog').html(msg);
            $('#dialog').load(function() {
                $('#close').click(function() {
                    $('#over').fadeOut(fadeTime);
                });
                if ($('#unique') > 0) {
                    $('#unique').load(function(){
                        $('#over').fadeIn(fadeTime);
                    });
                }
                else {
                    $('#over').fadeIn(fadeTime);
                }
            });             
        });

我已经尝试了没有引号的 ajax 调用,但结果是一样的......我只是把它们放进去,因为我认为这可能是问题......虽然我认为在这样的符号除非其中一个字段值应该是字符串,否则引号不会产生影响。

该代码中是否有任何明确的内容可能导致不发送查询字符串?我想我的语法有问题......我只是看不到它。

#dialog 加载回调似乎也从未被调用过……但我想这是另一个问题。

4

1 回答 1

1

试试这个

$.ajax({
    //The link we are accessing with params
    url:'http://example.com/script/content.php'
    + '?id='
    + $(this).prop('id'),
    // The type of request.
    type: "get",
    //The type of data that is getting returned.
    dataType: "html",
    error: function(){
    //something here
    },
    success: function( strData ){
    //something here
    }
});
于 2013-04-07T12:18:53.963 回答