2012-08-29 51 views
0

我的代碼中append方法不工作有什麼問題?我確實得到了警報,但將追加的實際方法不起作用。請參考下面的代碼:使用jquery.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

,如果你只是需要接着加入該<span>元素<select>你可以使用。經過(..)方法:

jQuery('#my_options').after('<span id="option_id_error" class="errors">Error</span>'); 
+0

嗨,是的..在你做出迴應之前,我確實嘗試過了,我發現它工作正常。無論如何,感謝您的幫助。 – user1149244

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>'); 

你可以看到它在以下鏈接

工作

http://jsfiddle.net/LGkWp/

+0

是是,它已經擁有了#號。我該怎麼編輯我的帖子上面。 – user1149244

+0

我編輯了我的答案 –

+0

它仍然不起作用。 – user1149244