我的表格格式如下:
<div data-role="page" data-last-value="43" data-hidden="true"
data-bind='attr : {"name":"John"}'></div>
我正在尝试更改&#34; John &#34;到&#34; 约翰尼&#34;。我试图这样做:
$(document).ready(function() {
alert($( "div" ).data( "options"));
});
这将我输出为:
attr : {"name" : "John"}
我尝试将其视为json格式,如:
alert($( "div" ).data( "options").attr)
但它是 undefined
。
它是否为字符串格式,我应该将其设置为某个变量,使用正则表达式并更改字符串格式? 如何使用jquery更改它?
答案 0 :(得分:6)
您使用的格式不正确,使用
<div data-options='{ "attr" : {"name":"John"}}'></div>
var div = $("div");
var data = div.data("options")
console.log(data.attr)
//update name
setTimeout(() => {
data.attr.name = 'Satpal';
div.data("options", data);
data = div.data("options")
console.log(data.attr);
}, 2000)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-options='{ "attr" : {"name":"John"}}'></div>