javascript - 使用原型(prototype)通过 Ajax 提交表单并更新结果 div

标签 javascript ajax prototypejs form-submit

我想知道如何通过 Ajax(使用原型(prototype)框架)提交表单并在“结果”div 中显示服务器响应。 html 看起来像这样:

<form id="myForm" action="/getResults">
    [...]
    <input type="submit" value="submit" />
</form>
<div id="result"></div>

我尝试将一个 javascript 函数(使用 Ajax.Updater)附加到“onsubmit”(在表单上)和“onclick”(在输入上),但是在函数结束后表单仍然是“非 Ajax”提交(所以整个页面都被结果替换了)。

最佳答案

Form.Request 上查看 Prototype API 的页面和 Event处理。

基本上,如果你有这个:

<form id='myForm'>
.... fields ....
<input type='submit' value='Go'>
</form>
<div id='result'></div>

你的 js 或多或少会是:

Event.observe('myForm', 'submit', function(event) {
    $('myForm').request({
        onFailure: function() { .... },
        onSuccess: function(t) {
            $('result').update(t.responseText);
        }
    });
    Event.stop(event); // stop the form from submitting
});

关于javascript - 使用原型(prototype)通过 Ajax 提交表单并更新结果 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/443276/

相关文章:

javascript - 来自 ajax 调用的 JSON 输入意外结束

jquery - 有什么理由比 JQuery 更喜欢 Prototype 吗?

javascript - 什么是众所周知的 JavaScript MVC 模式?

javascript - react /归零 : Wait for reducer to get props

javascript - 如何使用ajax jquery asp.net mvc访问和显示数据库中的数据

javascript - Ajax请求总是抛出错误

javascript - 如何在对 Ajax 请求的 HTML 响应中强制执行 Javascript

javascript - 原型(prototype)中有 2 个相同的(函数、类)名称 "Ajax"

javascript - 从服务器上的 Meteor 集合中获取项目会抛出 "Can' t wait without Fiber”

javascript - 帮助 jquery 选择器