2013-05-17 3 views
1

텍스트 영역과 'COMMIT'버튼을 포함한 필드가있는 주문 양식이 있습니다. 입력란은 자동 저장됩니다. 즉 입력란의 값이 변경되면 DB에 저장됩니다. COMMIT 버튼은 주문 상태를 'committed'로 변경하여 저장합니다.백본 js : 이벤트 클릭 이벤트 변경 발생

사용자가 텍스트 영역에 입력 한 다음 필드를 벗어나지 않고 'COMMIT'을 클릭하면 문제가 발생합니다. 텍스트 영역의 변경 이벤트가 트리거되지만 버튼 클릭을 무력화시키는 것 같습니다. COMMIT 버튼을 두 번 클릭해야합니다.

어떻게 두 가지 이벤트를 모두 실행할 수 있습니까? (. 사용자가 필드를 편집하고 그녀가 선택한 그러나 COMMIT 클릭 무료이기 때문에 그들은 독립적으로 발사 할 필요가 나는 반드시 커밋 updateInstructions 방법은 직접 실행할 수 없습니다!)

하기 Teh codez :

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); 
}, 

답변

0

이벤트에 변경을 사용하는 Intead는 이와 같이 흐림 을 사용하고 충분하다고 생각합니다.

events: { 
    "blur textarea"  : "updateInstructions", 
    "click .btnCommit"  : "btnCommit", 
}, 
+0

응답 해 주셔서 감사합니다. 우리는 사용자 상호 작용 모델에서 벗어난 것처럼 보입니다. – DaveC426913