0
長話短說,這是我第二次在24小時內發佈在Stackoverflow上。無情,我越來越接近我的答案,但我陷入了一件小事。elements [i] .onkeyup = function()僅針對第一類元素觸發
基本上,我使用Cocoon,它可以幫助嵌套窗體,所以當用戶想要創建另一個項目時,她將不得不提交2個窗體,因此,將有超過1個項目具有相同的類。
這是我的代碼。
var stopTimeElement = document.getElementsByClassName('mdl-textfield__input stage-time stop_time');
for (var i=0; i<stopTimeElement.length; i++){
stopTimeElement[i].onkeyup = function() {
debugger;
var stopTimeVal = parseInt(this.value)
var index = parseInt($(currentStage()).attr('rel')) - 1
stopTimeArray[index] = stopTimeVal
wtf = stopTimeArray;
console.log('----wtf----: ',wtf)
componentHandler.upgradeDom();
updateTTH();
//reRun();
}
}
因此,在第一種形式,它工作正常。但對於其他所有人來說,它甚至不會被觸發。 :(
我甚至嘗試包裝的功能等......
function reRun() {
// code here
}
reRun()
我知道這是一個有點凌亂與混音的JavaScript和jQuery,但讓我知道你的想法!
老實說,我認爲這會工作,但同樣的事情。第二種形式沒有做:( – dsomel21
@ dsomel21,呃,我從我的視線中失去了,你直接把事件處理函數分配給onkeyup屬性,我使用'''addEventListener()''''改變了我的答案。方法使用 – QuestionAndAnswer
@ dsomel21,我已經添加了額外的例子,所以你可以在我的答案中看看它 – QuestionAndAnswer