表单提交 - php ajax jquery-ui - 不会在 Firefox 或 IE 上执行
Posted
技术标签:
【中文标题】表单提交 - php ajax jquery-ui - 不会在 Firefox 或 IE 上执行【英文标题】:form submit - php ajax jquery-ui - will not execute on Firefox or IE 【发布时间】:2014-07-23 22:23:34 【问题描述】:我有一个下拉表单,其中包含用户可以从中选择的四个选项的列表。选择选项后 并单击“在公共聊天中发布广告”按钮,需要将选项值 (1, 2, 3, 4) 传递给advertise.php?advertise=1 (2, 3, or 4) 没有页面刷新。在公共聊天中单击广告后,我想要一条消息,上面写着“消息已发送到聊天!”用户可以点击确定。
我的问题:
代码不会在 Firefox 或 Internet Explorer 上执行(我曾在 Debian Linux 和 Windows PC 上尝试过——它们都具有相同的结果)。在 Chrome\Opera 上完美运行。
发送请求时会改变
【问题讨论】:
【参考方案1】:如果您 - 提交 - 表单,页面将被刷新。您必须停止或阻止表单提交事件的默认操作。这是一个使用 jquery 的示例:
$('#myForm').on('submit', function(e)
e.preventDefault();
// your ajax function
);
【讨论】:
好吧,这是我在上面的示例中遇到的众多问题之一。谢谢。【参考方案2】:而不是使用
<input type="submit" value="Advertise in Public Chat">
你可以使用
<input type="button" id="submit-btn" value="Advertise in Public Chat">
对于 ajax,您可以这样做:
$("#submit-btn").click(function()
$.ajax(
type: "POST",
url: "advertise.php",
data: dataString,
success: function()
$('#message').html("<h2>Message sent to Chat!</h2>")
);
);
);
【讨论】:
当我点击按钮时,页面刷新,我没有看到“发送到聊天的消息。我有 jquery ui 库,然后是在 head 标签之间的脚本。知道为什么 jquery没有加载? 如果您使用 firebug,请检查您得到的响应。而且根据您的代码,您没有使用任何 idmessage
的元素,因此 ajax 调用可能成功,但由于没有 id 为 message
的元素,您没有收到消息。我做了这个演示jsfiddle,希望对你有帮助。 php代码在小提琴注释中。【参考方案3】:
这样你就可以在advertise.php中访问$_GET['advertise']
更新
我第一次忘记在数据声明中放花括号,现在可以使用了
以上是关于表单提交 - php ajax jquery-ui - 不会在 Firefox 或 IE 上执行的主要内容,如果未能解决你的问题,请参考以下文章