如何使用不同的动作通过AJAX提交表单?

时间:2010-06-02 15:34:42

标签: javascript ajax forms

我有一个表单元素,并且有一个普通的提交按钮,但我也希望能够使用表单中输入的值提交AJAX get请求,但是将其设置为不同的地址(这与提交按钮无关) )。

有一种简单的方法吗?


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

1 个答案:

答案 0 :(得分: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来获取更多控件/选项。

完全可以在没有图书馆的情况下完成这项工作,这只是一项工作。