jquery .insertBefore()缺少文本

时间:2010-11-10 23:45:41

标签: javascript jquery ajax

我开始使用JQuery,并且我已经构建了一个小的js函数,它在调用时向表单添加字段。

function newPoint(time){
    $('<br/>At '+ time + ' seconds, bring object <select><option>in</option><option>out</option></selection> at <select><option>regular</option><option>slow</option><option>fast</option></selection> speed.<br/>').insertBefore('#submitBtn');    
}

这是html ...

<div id="rightSide">
<form> <input id="submitBtn" type="submit" value="Go"></form>
</div>

当函数运行时,插入有效,但是下拉和最后一个单词'speed'之间的单词'at'不会被插入。

alt text

这是为什么?我想我误解了jquery或js工作方式的关键。 (我只是把脚弄湿了。)如果是这样的话,你能指出我正确的理解方向,而不仅仅是帮我解决这个问题吗?

谢谢!

编辑:使用固定的(愚蠢的手指),弹出另一个问题......

当我删除换行符时&lt; br /&gt;在插入的开头,我丢失文本直到第一个下拉框。对此为何的任何想法?

2 个答案:

答案 0 :(得分:5)

问题在于: ... bring object <select><option>in</option><option>out</option></selection> at ...

最后一个结束标记显示</selection>。它应该是</select>。插入字符串末尾存在同样的问题。

答案 1 :(得分:0)

为什么要打开select代码但关闭selection代码?

被片刻殴打。