jquery insertafter()
无法在$(this)
变量中使用。
我的编码在这里
<select name="input_field[]" class="selectcase">
<option value="">Select</option>
<option value="input">Text</option>
<option value="option">Option</option>
</select>
脚本
$(this).change(function (){
$("<div><input type='text' name=''></div>").insertAfter($(this));
});
我有很多选择标签并选择特定的选择标签。使用更改功能,我想在select标签后添加文本框。我使用了insertAfter()
函数。但它没有用。
答案 0 :(得分:1)
this
的值在您的情况下为window
,因此您应该使用类名绑定事件
$('.selectcase').change(function (){
$("<div><input type='text' name=''></div>").insertAfter($(this));
});
答案 1 :(得分:1)
当绑定事件$(this)
引用window
时。您需要使用正确的选择器,即$(".selectcase")
而不是$(this)
来监听select
的更改事件
$(".selectcase").change(function (){
$("<div><input type='text' name=''></div>").insertAfter($(this));
});
答案 2 :(得分:1)
请勿在第一行使用this
作为ID,必须替换为select
:
$('select').change(function (){
$("<div><input type='text' name=''></div>").insertAfter($(this));
});