ajax帖子没有给出任何指示

时间:2012-07-20 18:24:42

标签: jquery ajax post

$("#submitbutton").button().click(function() {
    $.ajax({
        type: 'POST',
        url: 'tst/mmm.php',
        data: { abc: "abcdefghijklmnopqrstuvwxyz" },
        success: function(msg){
            alert(msg);
        }
    });
});

# cat tst/mmm.php
<?php echo json_encode(array("first"=>"YyXy","last"=>"yyyyXXX")); ?>    

为什么我看不到告诉我的警告 first = YyXy&amp; last = yyyyXXX 。如果它意味着什么,可以从远程访问mmm.php。他们都是阿帕奇。我应该在哪里寻找这篇文章的回复?对不起这个主题的蹩脚问题,我是新手。感谢名单!!

编辑1:HTML代码:

 <body>
            <div id=container>
            <div id="first">
                    <form id='form1'>
                            <button id="submitbutton" type="submit">Submit</button></br></br>
                    </form>
            </div>

编辑2: 我是否需要特殊用户:html的组权限才能发布到php? 我应该使用一些特殊设置来允许在apache配置(httpd.conf)中访问mmm.php吗?

4 个答案:

答案 0 :(得分:7)

可能的原因不起作用:

  • 你确定你的选择器像$("submitbutton")一样吗?这告诉jQuery要查找标记submitbutton。也许,您的意思是$("#submitbutton")$('.submitbutton')

  • 您的js代码是否包含在$(document).ready(...)中?除非jQuery可能不了解整个DOM树。

答案 1 :(得分:3)

如果没有看到完整的HTML代码,很难确定,但您的选择器看起来不对。如果“submitbutton”是一个id属性,那么你的选择器应该是:

$("#submitbutton")

如果它是一个类,它应该是:

$(".submitbutton")

编辑:

你的AJAX代码不应该在ajax设置中有成功功能吗?像这样:

$.ajax({
    type: 'POST',
    url: 'tst/mmm.php',
    data: { abc: "abcdefghijklmnopqrstuvwxyz"},
    success: function(msg){
        alert(msg);
    }
});

答案 2 :(得分:1)

试试这个:

 $.ajax({   
       type: 'POST',
       url: 'tst/mmm.php',
       data: { abc: "abcdefghijklmnopqrstuvwxyz" }
        })
       .success(function (msg) {
                    alert(msg);
        })

答案 3 :(得分:1)

嗯,在the docs中他们陈述如下:

  

弃用通知: jqXHR.success(),jqXHR.error()和   jqXHR.complete()回调       将在jQuery 1.8中弃用。要准备最终删除的代码,请使用       jqXHR.done(),jqXHR.fail()和jqXHR.always()代替。

所以我使用了他们的例子,现在它看起来像那样(并且有用):

$("#submitbutton").button().click(function() {
    $.ajax({
        type: 'POST',
        url: 'mmm.php',
        data: { abc: "abcdefghijklmnopqrstuvwxyz" } })
        .done(function() { alert("success"); })
        .fail(function() { alert("error"); })
        .always(function() { alert("complete"); });
   });
});
谢谢你们!