簡體   English   中英

Javascript 中的巫術操縱 DOM?

[英]Witchcraft in Javascript manipulating DOM?

我在 HTML 上有 3 個 HiddenFor Razor Strings,它將值傳遞給模型 C#。

然后我有一個帶有三個 Dropzones 的 javascript(用於拖放的 js 庫)。 此時將有三個“刪除事件”將填充該 hiddenforValues。

為此,我測試了 3 種不同的語法:

document.getElementById().value
document.querySelector().value
$('#Element').value

但我注意到一些奇怪的事情:對於前兩個 hiddenfor querySelector 和 Jquery 方法工作正常,但是對於第三個只有document.getElementById可以工作(否則值將作為空發送)。 同時,如果我多次使用它,則無法識別document.getElementByID

因此,如果我對其中兩個使用 Jquery,對最后一個使用document.getElementById ,這將正常工作。

問題是……為什么?

唯一不同的是第三個字符串里面有“,”。

Jquery 不使用特殊字符或類似的東西?

我的代碼有效,但我只是對那個有問題的功能感到好奇。

你最好使用$('#Element').val()代替。

$(*)返回一個jQuery collection ,它有很多methods但沒有像value這樣的option

document.querySelector$()都接受用於標識目標的 css 選擇器字符串。 在 CSS 中, ,分隔選擇器。

因此, $('#a,b')將查找 ID 為 "a"b元素的元素,而document.getElementById('a,b')將生成 ID 為 "a,b" 的元素。

要在 jQuery 中模擬這種行為,您需要編寫$('*[id="a,b"]');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM