Tôi đang cố gắng những HTMLLàm thế nào để thiết lập định dạng JSON sang HTML5 dữ liệu thuộc tính trong jQuery
<div data-params="{a: 1, b: '2'}" id="TEST1"></div>
<div data-params='{"a": 1, "b": "2"}' id="TEST2"></div>
Sau đó, tôi sử dụng dữ liệu() phương pháp trong jQuery
$('#TEST1').data('params'); //return a string
$('#TEST2').data('params'); //return a object
Nhưng TEST1 nó không phải là một đối tượng trả về, nhưng một chuỗi, nó chỉ có thể trả về đối tượng TEST2. Nhưng tôi muốn nhận được một đối tượng bằng TEST1, Làm cách nào để làm điều đó?
=============
Cuối cùng, tôi chọn để viết một chức năng để đạt được những nhu cầu riêng của họ
$.fn.data2 = function(key, value)
{
if (value === undefined)
{
var data = $(this).data(key);
if (typeof(data) === 'string')
{
var _data = data.replace(/^[\s\r\n]*/g, '').replace(/[\s\r\n]*$/g, '');
if (_data.match(/\{.*\}/) || _data.match(/\[.*\]/)) {
try {
_data = (new Function('return ' + data))();
if (typeof(_data) == 'object') {
$(this).data(key, _data);
data = _data;
}
} catch(ex) {}
}
}
return data;
}
return $(this).data(key, value);
};
Nhưng tại sao tôi cố gắng sử dụng plugin jquery.metadata là để làm việc? – Jasper
Có cách nào để jQuery phân tích cú pháp giống như plugin jquery.metadata HTML đầu tiên không? – Jasper