什么是这个Prototype JS ajax表单帖子的等效jQuery实现?

时间:2011-06-21 16:14:17

标签: javascript jquery prototypejs

如何将此Prototype Ajax调用转换为以相同方式运行的jQuery实现?

JS:

<script style="text/javascript">
    function checkit() {
        var request = new Ajax.Request('/checkit', 
        {
            asynchronous:true, 
            evalScripts:true, 
            parameters: $('checkit_form').serialize(true)
        });
    }
</script>

HTML:

<form id="checkit_form">
 <input type="hidden" id="hashedEnumerable" name="hashedEnumerable" value="X101933488ccf103hghs029sskxiiefdhsYs"> 
</form>

2 个答案:

答案 0 :(得分:0)

function checkit() {
    var request = $.ajax({
        url: '/checkit',
        data: $('#checkit_form').serialize()
    });

    return request;
}

不需要return语句,但它允许您说:

var x = checkit();
x.success(function() { /* DO STUFF */ });

答案 1 :(得分:0)

我对Prototype并不是特别熟悉,但我认为代码看起来像这样:

$.ajax('/checkit', 
    {
        data: $('#checkit_form').serialize()
    }
);

jQuery的默认设置是用于评估脚本以及AJAX是异步的。 IIRC,对于Prototype也是如此,因此在原型示例中这些行是不必要的。

您也可以使用$.get帮助器执行此操作:

$.get('/checkit', $('#checkit_form').serialize());

这是上述代码的简写。