将数组对象传递给javascript函数
我正在创建一个动态链接,在这个链接中,我正在传递带有一些值和数组的函数,但当调用该函数时,数组将变成类似字符串的“[object object]”。它不再作为数组保留将数组对象传递给javascript函数,javascript,arrays,sharepoint-2013,Javascript,Arrays,Sharepoint 2013,我正在创建一个动态链接,在这个链接中,我正在传递带有一些值和数组的函数,但当调用该函数时,数组将变成类似字符串的“[object object]”。它不再作为数组保留 Javascript代码 var mdata = {}; mdata.itemId = data.d.ID.toString(); mdata.sucessMsg = "Gate Pass detail document is uploaded successfully.";
Javascript代码
var mdata = {};
mdata.itemId = data.d.ID.toString();
mdata.sucessMsg = "Gate Pass detail document is uploaded successfully.";
mdata.errorMsg = "Gate Pass detail document uploading cancel";
tdUplDoc.html("<a id='uplDoc' href='#' onclick=\"javascript:openBasicDialog('UploadDocument.aspx','Upload CivilID or Passport Copy','" + mdata + "');\">Upload Documents</a>");
如何将数组保持为数组而不是字符串。我做错了什么。请有人帮帮我:(将其作为JSON字符串传递
"'..,'" + JSON.stringify(mdata) + "');\">Upload Documents</a>");
这不起作用,请执行以下操作
var a = document.createElement('a');
a.id = 'uplDoc';
a.href='#';
a.addEventListener('click', function(){
openBasicDialog('UploadDocument.asp', 'Upload CivilID or Passport Copy', mdata);
}
tdUplDoc.appendChild(a);
您得到的是
[object object]
,因为您正在进行字符串连接,这是此对象的字符串表示形式:
"<a id='uplDoc' href='#' onclick=\"javascript:openBasicDialog('UploadDocument.aspx','Upload CivilID or Passport Copy','" + mdata + "');\"
学习使用DOM,而不是试图通过将HTML字符串混搭在一起来构建DOM。请不要粗鲁。这是我用来制作动态表格的代码部分。我不是粗鲁。你的技术容易出错且过于复杂。DOM会让事情变得更简单。你的解决方案是可行的,但因为mdata有字符串,所以它是givi我用JSON.stringify(mdata)解析的未终止字符串的ng错误。替换(/\“/g,”)谢谢again@Milind很乐意帮忙!:)
var a = document.createElement('a');
a.id = 'uplDoc';
a.href='#';
a.addEventListener('click', function(){
openBasicDialog('UploadDocument.asp', 'Upload CivilID or Passport Copy', mdata);
}
tdUplDoc.appendChild(a);
"<a id='uplDoc' href='#' onclick=\"javascript:openBasicDialog('UploadDocument.aspx','Upload CivilID or Passport Copy','" + mdata + "');\"
tdUplDoc.html("<a id='uplDoc' href='#'>Upload Documents</a>");
document.getElementById('uplDoc').addEventListener('click', function(){
openBasicDialog('UploadDocument.asp', 'Upload CivilID or Passport Copy', mdata);
});