我正在尝试附加我的表单,但添加了一个复选框,但我想在提交按钮之前添加它。
$('#form').append('<input type="checkbox" id="checking" name="checking" class="required" />').before($('.clickSubmit'));
.clickSubmit
是:
<p class="clickSubmit"><input type="submit" name="submit" id="submit" value="Click to submit" class="btn btn-default" disabled="disabled"></p>
上面的代码将.clickSubmit
移到我的表单之外,当我想要表单中的提交按钮时将其放在表单之前,我只想在它之前添加一个复选框。我做错了什么?
答案 0 :(得分:4)
这是正确的语法:
$('.clickSubmit').prepend('<input type="checkbox" id="checking" name="checking" class="required" />');
http://api.jquery.com/prepend/
before
的使用会在之前添加你调用它的元素。 Prepend
会将其添加为所选元素
答案 1 :(得分:2)
假设您希望结构看起来像这样
<p class="clickSubmit">
<input type="checkbox" id="checking" name="checking" class="required" />
<input type="submit" name="submit" id="submit" value="Click to submit" class="btn btn-default" disabled="disabled">
</p>
你可以做到
$('<input type="checkbox" id="checking" name="checking" class="required" />')
.insertBefore('#submit');
答案 2 :(得分:1)
问题是因为append()
正在返回form
元素,因此您将整个form
移到按钮之前。而是在新复选框上使用insertBefore
。试试这个:
$('<input type="checkbox" id="checking" name="checking" class="required" />').insertBefore('.clickSubmit');