テキストエリアと「COMMIT」ボタンを含むフィールドを持つ注文フォームがあります。フィールドは自動保存されます。つまり、フィールドの値が変更されると、データベースに保存されます。コミットボタンは、注文のステータスを「コミット済み」に変更し、それも保存します。
ユーザーがテキストエリアに入力し、フィールドを離れずに「COMMIT」をクリックすると、問題が発生します。テキストエリアの変更イベントがトリガーされますが、これはボタンのクリックを無効にするようです。COMMIT ボタンをもう一度クリックする必要があります。
両方のイベントを発生させるにはどうすればよいですか? (ユーザーは自由にフィールドを編集して [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);
},