javascript - 替换表单提交页面上的文本

标签 javascript jquery forms

我有一个表单,可以让人们向我的网站(公司内部网)提交新闻文章。有时,由于我对相关模型保存方法采取了一些操作,表单提交需要几秒钟才能解决。我想用一条消息替换表单页面上的文本:“正在发送您的文章。这可能需要几秒钟,请不要刷新页面。”一旦有人点击提交。我在网上购物时在许多网站上看到过这些内容。

我的第一次尝试是向表单按钮添加一个 onClick 事件。提交然后成功替换了文本但没有提交表单。我看了一下this answer on binding two events to one submit button但它似乎并没有满足我的需求,因为它看起来是特定于 PHP 的。我确信 javascript 是完成这项工作的正确工具,但除了绑定(bind)到单击提交按钮之外,我想不出如何做到这一点。有谁知道正确的方法吗?

最佳答案

JavaScript 确实是正确的方法。如果您使用 jQuery,您可以继续使用如下内容:

$('form#your-form-id').submit(function(){
    $(this).hide().after('Loading, please wait...');
});

其中#your-form-id 是表单的 ID。此功能隐藏表单内容并显示该文本,实际上您可以执行任何操作。

关于javascript - 替换表单提交页面上的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22607041/

相关文章:

jquery - 使用 DataTable 或 jQuery 禁用对空列的排序

php - 预选复选框

javascript - 在 iframe 中隐藏/伪造 src,在 DOM/检查元素中找不到该 src

javascript - jQuery 插件可通过控制台触发,但不能通过函数触发 - 为什么呢?

php - Jquery Slider 有时会出现在奇怪的位置

ruby-on-rails - 当表单提交错误时,Rails 4 中呈现的 url 会发生变化

django 表单错误打印 __all__

javascript - 模块化 Promise 和 Promise.all()

javascript - 我如何无法将 ng-model 值和标签值放入一个对象中?

javascript - 让 jquery-confirm 返回一个值