我有以下HTML:正在讀取HTML5數據而不是字符串?
<tr id="row_1" data-rk="02000008" data-pk="0001I">
當我檢查這個與螢火蟲它顯示爲:
dataset DOMStringMap { rk="02000008", pk="0001I"}
pk "0001I"
rk "02000008"
然後我使用jQuery閱讀:
var pk = $("tr[id='row_" + row + "']").data('pk')
var rk = $("tr[id='row_" + row + "']").data('rk')
但是這當我檢查我的JavaScript中的值時,螢火蟲調試器顯示什麼。它們也是稍後在Ajax調用中發送給我的C#代碼的相同值。
pk shows as "0001I"
rk shows as 2000008
有人可以解釋這一點嗎? rk和pk都以相同的方式編碼,都有一個或多個前導零,但一個返回爲字符串,另一個爲數字。
HTML不提供固定的var類型。所以jQuery「猜測」它的內容是什麼。 – YvesR
嘗試'alert(typeof rk)'看看它是否真的是一個數字。屬性應該始終是字符串,如果jQuery將其更改爲一個數字,那麼這是一件壞事。從[jQuery文檔](http://api.jquery.com/data/#data-html5):「每次嘗試將字符串轉換爲JavaScript值(包括布爾值,數字,對象,數組和null),否則它保留爲一個字符串。「所以這是設計。 – RobG