【问题标题】:How to submit a form via AJAX using a different action?如何使用不同的操作通过 AJAX 提交表单?
【发布时间】:2010-06-02 15:34:42
【问题描述】:

我有一个表单元素,它有一个普通的提交按钮,但我也希望能够使用表单中输入的值提交 AJAX 获取请求,但将其发送到不同的地址(这与提交按钮无关)。

有没有简单的方法可以做到这一点?


长版本:我有一个包含多个选择元素的表单,并且希望在每次用户设置其中一个时重新填充它们(将它们更新为一组新的有效值)。

【问题讨论】:

  • 所以您问是否可以让提交按钮将数据发送到您的服务器和“不同地址”?
  • @eykanal:不,我会编辑问题。

标签: javascript ajax forms


【解决方案1】:

如果您使用库(PrototypejQueryClosureany of several others),这将是最简单的。在这样一个库的帮助下,这几乎变得非常容易。

Prototype 示例:

$('theFormElementId').request({
    onSuccess: function(response) {
        // GET was successful
    }
});

它使用 Prototype 的 Form#request,但您可以改用 Ajax.Request 并通过 Form#serialize 获取表单数据(Form#request 基本上只是为您执行此操作)。

jQuery 示例:

$.get("yoururl", $('#theFormElementId').serialize(), function(data) {
    // The GET was successful
});

使用 jQuery 的 $.getserialize 函数(您可以使用 $.ajax 而不是 $.get 以获得更多控制/选项)。

完全有可能在没有库的情况下做到这一点,只是需要做更多的工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多