简体   繁体   English

无法在 javascript 函数调用中将 JSON 对象作为第二个参数传递

[英]Not able to pass JSON object as second argument in javascript function call

I am generating rows in javascript with for each loop, where each row has an anchor and with onclick of that anchor I am trying to pass a JSON object as second argument in my javascript function but I am getting undefined error.我正在为每个循环在 javascript 中生成行,其中每一行都有一个锚点,并且通过单击该锚点我试图在我的 javascript 函数中传递一个 JSON 对象作为第二个参数,但我收到未定义的错误。

I have already verified that result is a JSON object Here is my code to generate rows.我已经验证结果是一个 JSON 对象这是我生成行的代码。

 _.each(
response.details,
function(result, key, list) {searchdetails += "<tr><td style=\"text-align:center\" ><a class=\"btn btn-primary\" type=\"button\" onClick='Updatedetails(\"2\",result)'>Details</a></td></tr>";
   });

I am getting below error:-我收到以下错误:- 在此处输入图片说明

I have also tried by appending it like string as below:-我也尝试过将其附加为字符串,如下所示:-

 _.each(
response.details,
function(result, key, list) {searchdetails += "<tr><td style=\"text-align:center\" ><a class=\"btn btn-primary\" type=\"button\" onClick='Updatedetails(\"2\","+result+")'>Details</a></td></tr>";
   });

With this, I am getting below error:-有了这个,我得到以下错误:- 在此处输入图片说明

Can anybody tell me how do I pass it as JSON object.谁能告诉我如何将它作为 JSON 对象传递。

You are missing quotes and need to stringify your object:您缺少引号,需要对您的对象进行字符串化:

function(result, key, list) {searchdetails += "<tr><td style=\"text-align:center\" ><a class=\"btn btn-primary\" type=\"button\" onClick='Updatedetails(\"2\",\""+JSON.stringify(result)+"\")'>Details</a></td></tr>";

Note how modified code differs:请注意修改后的代码有何不同:

"...'Updatedetails(\"2\",\""+JSON.stringify(result)+"\")'..."

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM