0

我正在使用 Jquery 来处理表单而不加载新页面。我已经能够通过放置在输入字段“mailingfield”中的电子邮件地址获得警报。我无法弄清楚为什么帖子不起作用(更直接地说,图像在点击时没有做任何事情。.mailbutton 是一个图像。

window.onload = init;

function init() {
    $(".mailbutton").click(function() {
        var email = $(".mailingfield").val();
        $.post("/localhost/PHP_scripts/mailinglist.php", {
            email: email
        }, function(data) {
            var content = $(data).find('#content');
            $("#box").empty().append(content);
        }
        });
    };

mailinglist.php 正在寻找由 $_POST 设置的“电子邮件”。然后它会验证安全性等,然后如果电子邮件地址通过了插入数据库的验证,那么代码会解析一个带有 div ID 内容的 html 块。如果验证失败,它会在内容 div 之前生成一个类似的 html 块,并带有相关警告。我是否以正确的方式解决这个问题。非常感谢任何帮助。

4

2 回答 2

0

尝试使用 firebug 检查 NET 选项卡,查看是否在单击时发送请求,如果使用 chrome 检查 netowrk 选项卡以查看单击时是否生成任何请求..

你确定你的帖子网址是正确的....

这意味着如果您的网站是http://www.example.com/ 并且您从中发送 ajax 请求的页面是http://www.example.com/makeajaxcall/ajaxrequest.php那么您所在的 ajax url发布数据将是http://www.example.com/localhost/PHP_scripts/mailinglist.php

于 2012-07-20T14:07:46.433 回答
0

我建议像这样将事件绑定到文档就绪块中的按钮(更不用说我修复了您的语法错误。只要 url 正确,这将起作用):

window.onload = 初始化;

$(function(){

   $(".mailbutton").click(function() {
      var email = $(".mailingfield").val();
      $.post("/localhost/PHP_scripts/mailinglist.php", { email: email }, function(data) {
            var content = $(data).find('#content');
            $("#box").empty().append(content);
      });
   });
});
于 2012-07-20T14:05:29.310 回答