在閱讀http://api.jquery.com/remove/的刪除功能的文檔後,發現以下代碼可行。jQuery.remove()未按預期工作(?)
如果我有一個這樣的輸入元素:
<input id="hiddenRatings" name="languageRatings" type="hidden" value="{5, 3, 2, , , {5, 3, 4, , , {5, 3, 2}}}"/>
我想我應該能夠刪除它只是做
$().ready(function() {
$('#hiddenRatings').remove();
});
但什麼也沒有發生,我輸入元素仍然存在。我究竟做錯了什麼?
編輯:廢話......它的確行得通!我使用的是Chrome工具,而且我在「腳本」選項卡而不是「元素」選項卡中查看了DOM。該腳本選項卡當DOM變化明顯doesn't更新...
似乎爲我工作:http://jsfiddle.net/9EsSg/,這是奇怪的是誠實的。 '$()'應該返回一個空集。更多信息可以在['jQuery()'文檔](http://api.jquery.com/jQuery/)中找到。只需將回調函數傳遞給'$()',那可能會有效。 – 2012-01-18 15:10:44
關於我的第一條評論,畢竟它並不陌生。 'ready'總是將回調添加到'readyList',而不管選擇了哪些元素。 [見源代碼](https://github.com/jquery/jquery/blob/1.7.1/src/core.js#L253)。儘管使用'$(document).ready(...)'或'$(...)'仍然是比較常見的。 – 2012-01-18 15:19:44
真正奇怪的是jQuery需要一個實例化的對象來首先添加'DOMContentLoaded'回調 – Esailija 2012-01-18 15:23:37