我有一个像这样的字符串结构:
string str = "[['<h1>Heading 1</h1><p>Paragraph 1</p><p>Paragraph 2</p><p>Paragraph 3</p>', 31, 32,1],
['<h1>Heading 1</h1><p>Paragraph 1</p><p>Paragraph 2</p><p>Paragraph 3</p>', 34, 35,2]]";
我试图在javascript函数中传递此字符串,但警报不起作用。如何在JS函数中传递此字符串。到目前为止,我已经尝试了这个,但它无法正常工作
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "test", "test('" + str + "')", true);
JS
function test(str) {
alert(str);
}
答案 0 :(得分:1)
当您检查生成的javascript时,它将以test('[['
开头 - 然后其余部分不会被识别为字符串内容,并会出现javascript错误。
您需要使用HttpUtility.JavaScriptStringEncode来转义字符串:
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "test",
"test('" + HttpUtility.JavaScriptStringEncode(str) + "')", true);
答案 1 :(得分:0)
你可以使用本机浏览器JSON stringify函数..就像这样..
function test(str){
alert( JSON.stringify( str ) ) ;
}
你应该弹出一个阵列..
HTH