我在訪問輸入標籤的類時遇到了問題。首先,我使用下面的代碼行,並且它返回false。Jquery hasClass方法不起作用
$('#metaField_932.value').hasClass('hasDatepicker')
然後我用的代碼下面一行,並返回我真的
$("input[id='metaField_932.value']").hasClass('hasDatepicker')
任何人都可以解釋爲什麼發生這種情況。
注意:代碼中沒有id重複。
我在訪問輸入標籤的類時遇到了問題。首先,我使用下面的代碼行,並且它返回false。Jquery hasClass方法不起作用
$('#metaField_932.value').hasClass('hasDatepicker')
然後我用的代碼下面一行,並返回我真的
$("input[id='metaField_932.value']").hasClass('hasDatepicker')
任何人都可以解釋爲什麼發生這種情況。
注意:代碼中沒有id重複。
嘗試
$("#metaField_932\\.value").hasClass('hasDatepicker')
這是因爲#metaField_932.value
與ID metaField_932
與value
類選擇元素。你必須逃避點字符。
逃生.
通過\
因爲你正在尋找id
不class
和selector
由.
搜索一個class
像preceeded,
$("input[id='metaField_932\.value']").hasClass('hasDatepicker')
或者
$('#metaField_932\\.value').hasClass('hasDatepicker')
你的第一行看對於如下所示的HTML元素:
<input id="metaField_392" class="value">
而第二個是尋找一個看起來更像你的實際的HTML元素:
<input id="metaField_392.value">
與它.
任何選擇表明它是尋找一個元素與特定class
。
要解決這個問題,我建議不管是使用第二個選擇器,還是僅僅從元素的id
中刪除句點,因爲這使得它不清楚。
選擇器#metaField_932.value
搜索ID爲metaField_932
和類別value
的元素。你需要通過別人的答案給出逃脫.
字符。
首先讓分析你傳遞給jQuery的第一個代碼
#metaField_932.value
如果你在它仔細看的選擇,就意味着選擇與ID的元素爲metaField_932
和類爲value
。由於沒有這樣的元素存在第一個代碼沒有第二一段代碼返回任何
現在的作品,因爲它的屬性選擇,它不會有這樣的困惑。
正如F0G已經解釋了,你將不得不逃離.
與\\
這樣的jQuery能夠解釋整個選擇作爲ID
因此$("#metaField_932\\.value").hasClass('hasDatepicker')
應當制定
你可以張貼HTML? – BeNdErR