Javascript 变量前(';<;br>;';);“返回”;“未定义”不是一个函数;
我试图使用函数Javascript 变量前(';<;br>;';);“返回”;“未定义”不是一个函数;,javascript,for-loop,Javascript,For Loop,我试图使用函数.before()来分离for循环生成的一些输入。为了使它工作,我必须使用一个变量作为引用,以知道在哪里插入。问题是它返回uncaughttypeerror:undefined不是一个函数,我找不到任何文档可以阻止我这样做 代码如下: <textarea id="textareaString">0|1|2|3</textarea> <br /> <button onClick="cut()">Cut!</button> &
.before()
来分离for循环生成的一些输入。为了使它工作,我必须使用一个变量作为引用,以知道在哪里插入
。问题是它返回uncaughttypeerror:undefined不是一个函数
,我找不到任何文档可以阻止我这样做
代码如下:
<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 />');
}
0 | 1 | 2 | 3
停!
函数割(){
var str=document.getElementById('textareaString')。值;
var arrayOfStrings=str.split(“|”);
对于(变量i=0;i
”)之前的数组字符串;
}
根据这个问题,最后一行是:arrayOfStrings.before(“
”)代码>
你可以玩。请考虑我在这里已经删掉了很多代码,我不能考虑使用“<代码> ID /代码>的输入作为引用,用于<代码>前())/代码>,它将在这里工作,但不与完整的代码一起使用。如果您想查看它,它是(在这个例子中,我需要在每次剪切后使用|
添加一个
)
我到底错过了什么?那可能很愚蠢,但我就是找不到。提前谢谢 您可能正在尝试从JQuery使用
由于您没有使用jQuery对象,.before将不可访问
此外,您还可以使用varlegend=document.getElementById('specials')代码>退出循环
如果数组中的文本是'
,
,则可以执行arrayOfStrings.indexOf('
')
来定位字符串的位置,然后使用.slice
来获取要搜索的部分。legend.appendChild(document.createElement(“br”);哪个“函数.before()
”?没有函数.before()
!请给我看一下说明您可以使用它的文档。这实际上是一个jQuery函数:无论如何,@dandavis给了我一个完美的工作答案,谢谢!如果你想做一个真正的回复,我可以接受:)更新的JSFIDLE 1:,更新的JSFIDLE 2:好的,我明白了,谢谢你的解释!我已经把var从循环中去掉了。
不是数组的一部分,但是@dandavis实际上找到了一个很好的解决方法。