处理javascript、对象和firebug
这是对先前文章的编辑。对于一个非常新手的问题。我有一个javascript函数,它被一个数据对象调用。数据似乎是一个json字符串。但是,json字符串将不会解析。如何解析这个json字符串?那么如何用json字符串中的值替换div的内容呢 我得到以下错误:处理javascript、对象和firebug,javascript,json,Javascript,Json,这是对先前文章的编辑。对于一个非常新手的问题。我有一个javascript函数,它被一个数据对象调用。数据似乎是一个json字符串。但是,json字符串将不会解析。如何解析这个json字符串?那么如何用json字符串中的值替换div的内容呢 我得到以下错误: JSON.parse(数据)以“意外字符”结束 eval(“(“+data+”)”)在元素列表后消失,错误为“缺少” ----JSON字符串-------- http://jsonlint.com/ 将其称为有效的json字符串。 [{“c
JSON.parse(数据)
以“意外字符”结束eval(“(“+data+”)”)代码>在元素列表后消失,错误为“缺少”
----JSON字符串--------
http://jsonlint.com/ 将其称为有效的json字符串。
[{“cmd”:“as”,“id”:“#calls”,“val”:“未接来电”,“prop”:“innerHTML”}]
----html----
函数未命中\u调用\u回调(数据){
警报(“Foo”);/(断点)此警报“Foo”
警报(data.id);//这将打印“未定义”
var object1=JSON.parse(数据);
var object2=eval(“(“+data+”)”);//缺少[
//我该如何做以下工作?
//1.divname=data.id
//2.内容=data.id.val
//2.将的内容替换为内容
}
在我的页面上有div呼叫。
我想打电话给div
把东西放在这里。
用firebug“测试”是什么意思
<body>
And on my page I have div calls.
I want to fill div calls with
<div id="divname"> Put stuff here. </div>
</body>
<script type="text/javascript">
data = {
cmd:"as",
id:"divname",
val:"<h2> My Content</h2>"
};
console.log(data);
document.getElementById(data.id).innerHTML=data.val;
</script>
在我的页面上有div呼叫。
我想打电话给div
把东西放在这里。
数据={
cmd:“as”,
id:“divname”,
瓦尔:“我的内容”
};
控制台日志(数据);
document.getElementById(data.id).innerHTML=data.val;
这是一个棘手的问题。我将为团队和可能有同样问题的人的利益回答这个问题。问题是json字符串中的不可见回车。数据包含json.parse
无法处理的隐藏字符。我使用多种方法修复了json字符串,以消除回车符返回javascript库无法处理的内容
------服务器端-------
-------客户端------
我只是想了解一些firebug。它说data.id是未定义的。?您在页面上的什么地方定义“数据”?在我的示例中,您可以看到它被声明为对象文本。
<script type='text/javascript'>
function missed_calls_callback(data){
alert("Foo"); // (breakpoint) This alerts 'Foo'
alert(data.id); // This prints 'undefined'
var object1 = JSON.parse(data);
var object2 = eval('(' + data + ')'); // missing [
// How do I do the following?
// 1. divname = data.id
// 2. content = data.id.val
// 2. Replace contents of <div id="divname"> with content
}
</script>
<body>
And on my page I have div calls.
I want to fill div calls with
<div id="divname"> Put stuff here. </div>
</body>
<body>
And on my page I have div calls.
I want to fill div calls with
<div id="divname"> Put stuff here. </div>
</body>
<script type="text/javascript">
data = {
cmd:"as",
id:"divname",
val:"<h2> My Content</h2>"
};
console.log(data);
document.getElementById(data.id).innerHTML=data.val;
</script>
render = render_to_string('templates/file.html', { 'tag': objects })
dajax = Dajax()
dajax.assign('tags','innerHTML', render)
jsonStr = dajax.json()
jsonStr = ''.join(unicode(jsonStr, 'utf-8').splitlines())
return jsonStr
function my_callback(data){
var dString = JSON.stringify(data);
var myObject = JSON.parse(dString);
document.getElementById(myObject[0].id).innerHTML=myObject[0].val;
}