我有這個輸入表格,我要保存輸入的值,每當用戶要麼觸發一個on-submit
或的on-blur
事件。PolymerJS:多個事件火了同樣的動作(上模糊當上提交)
而我有這個問題,無論何時用戶觸發on-submit
,自然也會觸發on-blur
事件。因此兩個具有相同內容的事件被激發。 (不是一個大問題,但仍然)。
我已經搜索瞭解決方案,並找到了很多jQuery
,我相信我需要一個原始javascript
解決方案。
這裏是我的形式:
<form method="post" on-submit="doneEditAction">
<input
type="text"
value="{{editValue::input}}"
id="editItemInputField"
on-keyup="editKeyupAction"
on-blur="editBlur">
<button type="submit">edit</button>
</form>
這種形式的觸發事件doneEditAction
當我提交表單。但與此同時,editBlur
事件也被觸發,應該與doneEditAction
事件相同,以保存輸入的值。
editBlur事件
editBlur: function (e) {
this.doneEditAction(e);
this.editing = false;
}
doneEditAction事件
doneEditAction: function (e) {
e.preventDefault();
console.log(this.editingValue);
this.editing = false;
}
這裏是我的問題:
- 表單提交時,如何讓表單不觸發
on-blur
事件?或者 - 如何讓表單始終只發生一個事件?或者,請參閱編輯,
- 如果兩個相同的事件被觸發,它是否甚至都有問題(從性能角度來看)?
編輯
剛纔看到的Polymer TodoMVC,他們也火事件,當您嘗試對其進行編輯。證明:
這是否意味着,它實際上並不重要,如果兩個相同的事件被解僱?