我的代码中,append方法不起作用有什么问题?我确实收到警报但是附加的实际方法无效。请参阅以下代码:
jQuery(document).ready(function()
{
if (!document.getElementById('my_options').value)
{
alert('here');
jQuery('#my_options').append('<span id="option_id_error" class="errors">Error</span>');
}
});
HTML:
<select id="my_options" name="my_options">
<option value="">--Select--</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
<br/>
<select id="my_options2" name="my_options2">
<option value="">--Select--</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
<br/>
<select id="my_options3" name="my_options3">
<option value="">--Select--</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
表单中的选择是动态生成的。如果未在下拉框中选择任何内容,则会显示范围错误消息。所以我的预期结果如下:
<select id="my_options" name="my_options">
<option value="">--Select--</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select> <span>Error</span>
我不需要在选项上添加内容。
答案 0 :(得分:1)
您正在做的事情不正确,因为SPAN项目在SELECT项目中无效。
如果您尝试添加新选项,例如它将起作用
$('#my_options').append('<option value="5">item</option>');
你可以做的是将选择项包装在DIV中,如下所示
<div id="option1">
<select id="my_options" name="my_options">
<option value="">--Select--</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
</div>
比你能做的更多:
$('#option1').append('<span id="option_id_error" class="errors">Error</span>');
您可以在以下链接中看到它
答案 1 :(得分:0)
如果您需要在<span>
旁边添加此<select>
元素,您可以使用.after(..)方法:
jQuery('#my_options').after('<span id="option_id_error" class="errors">Error</span>');