我有一个订单表格,其中包含一个文本区域和一个“提交”按钮。字段是自动保存的,即字段值更改的那一刻,它被保存到数据库中。COMMIT 按钮将订单状态更改为“已提交”,同时保存。
当用户在文本区域中键入内容时,问题就出现了,然后在不离开该字段的情况下单击“提交”。触发了 textarea 的更改事件,但这似乎破坏了按钮单击。我必须再次单击 COMMIT 按钮。
如何让两个事件都触发?(他们需要独立触发,因为用户可以自由编辑字段并单击提交,但她选择。我当然不能让 updateInstructions 方法直接触发提交!)
编码:
events: {
"change textarea" : "updateInstructions",
"click .btnCommit" : "btnCommit",
},
updateInstructions: function(e){
var target = $(e.currentTarget),
name = target.attr('name'),
value = target.val(),
data = {};
data[name] = value;
this.model.save(data, {
success: function(model, response){
//handle response
},
wait: true,
patch: true
});
},
btnCommit: function(e){
e.preventDefault();
this.updateOrderStatus(this.ORDER_STATUS_SUBMITTED);
},