jquery - 在模态框内清除表单字段
问题描述
Rails 5.2
Bootstrap 4
我有一个带有内置表单的模态。这是一个测试表格,将测试笔记保存到表格中。保存工作正常,但单击“保存”按钮时评论部分不清除。
我怎样才能让它清除(不关闭模式)?
#TestModal.modal.fade aria-hidden="true"
.modal-dialog role="document"
.modal-content
.modal-header Test Modal
h3.modal-title
button.close aria-label="Close" data-dismiss="modal" type="button"
span aria-hidden="true" ×
.modal-body
= simple_form_for :test_model, url: test_model_url, method: :post do |f|
.form_group
= f.text_area :note, rows: 15
button.btn.btn-secondary data-dismiss="modal" type="button" Cancel
button.btn.btn-primary type="submit" Save
这是我尝试过的:
#TestModal.modal.fade aria-hidden="true"
.modal-dialog role="document"
.modal-content
.modal-header Test Modal
h3.modal-title
button.close aria-label="Close" data-dismiss="modal" type="button"
span aria-hidden="true" ×
.modal-body
= simple_form_for :test_model, url: test_model_url, method: :post do |f|
#NoteEntryForm.form_group
= f.text_area :note, rows: 15
button.btn.btn-secondary data-dismiss="modal" type="button" Cancel
button.btn.btn-primary type="submit" Save
并创建了一个views/notes/create.js.slim,并放入其中:
javascript:
$('#NoteEntryForm').val('')
但是当我尝试保存时,我收到以下错误消息:
NotesController#create is missing a template for this request format and variant. request.formats: ["text/html"] request.variant: []
解决方案
由于表单是通过 AJAX/JS 提交的,因此您也可以使用 JS 对其进行响应。您需要一个与接收提交的参数的控制器操作同名的视图文件,并且该视图文件需要具有 .js.slim 扩展名。
假设你有一个这样的笔记控制器:
class NotesController < ApplicationController
def create
@note = Note.new(note_params)
@note.save
end
end
然后你需要一个名为 create.js.slim 的视图文件,在里面你可以使用 jquery 来清除表单:
$('#test_model_note').val('');
如果 ID 正确,您需要检查 DOM,但我认为这将由表单助手以这种方式生成。
推荐阅读
- botframework - botframework directline v3.0 Http 502 和 Http503
- swift - NSViewAnimation:目标不是视图或窗口
- c# - 比较文本框和预定义列表的值?
- bootstrap-4 - 如何将字体添加到引导主题中
- react-native - 使用 react-native 使用新应用程序更新 Google Play 商店中的应用程序
- magento - Magento 1 - 将图像添加到下拉菜单
- python - keras模型保存错误
- c# - 我如何知道 InternetGetConnectedState 的状态是“正在连接”
- r - 预订!未定义的控制序列。
\直通 - yii2-advanced-app - 如何使用带有yii2语法的html代码增加图片?