1

テキストエリアと「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);
},
4

1 に答える 1