我試圖使用函數.before()
來分隔for-loop
生成的一些輸入。爲了使它工作,我必須使用一個變量作爲參考來知道在哪裏插入<br>
。問題是它返回Uncaught TypeError: undefined is not a function
,我找不到任何會阻止我像我一樣做的文檔。var.before('<br>');返回「未定義不是函數」
下面的代碼:
<textarea id="textareaString">0|1|2|3</textarea>
<br />
<button onClick="cut()">Cut!</button>
<div id="specials"></div>
function cut() {
var str = document.getElementById('textareaString').value;
var arrayOfStrings = str.split('|');
for(var i = 0; i < arrayOfStrings.length; i++) {
var legend = document.getElementById('specials');
var mo = document.createElement('input');
mo.setAttribute('type', 'text');
mo.setAttribute('size', '5');
mo.setAttribute('id', 'special' + (i+1));
mo.setAttribute('value', arrayOfStrings[i]);
legend.appendChild(mo);
}
console.log(arrayOfStrings);
arrayOfStrings.before('<br /><br />');
}
根據問題的行是最後一個:arrayOfStrings.before('<br /><br />');
你可以玩on this JSFiddle。請注意我在這裏削減了很多代碼的事實,我不能考慮使用輸入的id
作爲參考.before()
,它可以在這裏工作,但不能用完整的代碼。如果你想檢查出來,它是in this JSFiddle(在這個我需要添加一個
每次切割後使用|
)。
我完全錯過了什麼?這可能很愚蠢,但我無法找到它。提前致謝!
legend.appendChild(document.createElement(「br」)); – dandavis 2014-10-02 22:29:52
哪個「函數'.before()'」?沒有函數'.before()'!請告訴我可以使用的文檔。 – Bergi 2014-10-02 22:40:00
這實際上是一個jQuery函數:http://api.jquery.com/before/無論如何,@ dandavis給了我一個完美的工作答案,謝謝!如果你想做一個真正的回覆,所以我可以接受它:)更新JSFiddle 1:http://jsfiddle.net/s0hjx2ob/1,更新JSFiddle 2:http://jsfiddle.net/uavgrac2/2/ – Orphal 2014-10-02 22:44:00