我怎么能让一个表单标签执行两个动作?
How could I have a form tag execute 2 actions?
我正在尝试向网站添加新功能,为此我需要使用表单,我面临的问题是我必须创建此新功能的位置已经在表单中并且此表单没有操作,但如果我将操作设置为无,它也可以工作。我的问题是,如何让旧表单执行新操作的同时仍然执行旧操作?
如果你想看,这是我的代码:
<form class="form" method="post" action="/testement" action=""> <--- This is where I am trying to do the two actions
<div class="row">
<div class="col-md-6">
{{display_field(form.point_cle)}}
</div>
<div class="col-md-6">
<label class="control-label" for="commentaire">Commentaire</label>
<textarea name="the_comment" id="123soleil" class="form-control"></textarea>
<input type="hidden" name="msr_id" value="{{msr.id}}">
</div>
</div>
<button id="btn-{{pos.name}}" class="btn btn-{{pos.value.color}}" type="submit">{{pos.name}} - {{pos.value.action}}</button>
</form>
很少有评论说使用 JavaScript,它们是正确的 - 阅读 AJAX 请求,然后将您的提交变成常规按钮。
一般来说 - 你不应该做这样的事情。通常的方法是 /testement 页面,您 POST 表单除了执行第一个操作外还执行第二个操作。为什么?最大的问题是,如果您同时启动这两个操作,那么如果用户刷新浏览器或被带到一个新页面,对这两个操作中的某些操作的请求可能会被取消,甚至可能不会启动(如果这两个操作是相互依赖的) ).
以上规则适用于满足以下条件的操作:
- 变异状态
- 需要一起完成
- 两者都对工作流程至关重要
您仍然可以从服务器查询多条数据,因为不读取部分数据(来自一个失败或取消的调用)不是问题。
我正在尝试向网站添加新功能,为此我需要使用表单,我面临的问题是我必须创建此新功能的位置已经在表单中并且此表单没有操作,但如果我将操作设置为无,它也可以工作。我的问题是,如何让旧表单执行新操作的同时仍然执行旧操作?
如果你想看,这是我的代码:
<form class="form" method="post" action="/testement" action=""> <--- This is where I am trying to do the two actions
<div class="row">
<div class="col-md-6">
{{display_field(form.point_cle)}}
</div>
<div class="col-md-6">
<label class="control-label" for="commentaire">Commentaire</label>
<textarea name="the_comment" id="123soleil" class="form-control"></textarea>
<input type="hidden" name="msr_id" value="{{msr.id}}">
</div>
</div>
<button id="btn-{{pos.name}}" class="btn btn-{{pos.value.color}}" type="submit">{{pos.name}} - {{pos.value.action}}</button>
</form>
很少有评论说使用 JavaScript,它们是正确的 - 阅读 AJAX 请求,然后将您的提交变成常规按钮。
一般来说 - 你不应该做这样的事情。通常的方法是 /testement 页面,您 POST 表单除了执行第一个操作外还执行第二个操作。为什么?最大的问题是,如果您同时启动这两个操作,那么如果用户刷新浏览器或被带到一个新页面,对这两个操作中的某些操作的请求可能会被取消,甚至可能不会启动(如果这两个操作是相互依赖的) ).
以上规则适用于满足以下条件的操作:
- 变异状态
- 需要一起完成
- 两者都对工作流程至关重要
您仍然可以从服务器查询多条数据,因为不读取部分数据(来自一个失败或取消的调用)不是问题。