[英]How can I pass an object on click of anchor Tag
我有一個創建錨標簽的函數,單擊錨標簽后我傳遞了一些參數。 單擊錨標記后如何傳遞對象。
這是我的代碼
var obj = {
"Name": "USA",
"id": 1,
"CON": "NA",
"VAl": "TS"
}
if (obj.VAl) {
obj.text = "<a style='color:#0000ff' onClick='openMyData(event," + obj + ")' href='javascript:void(0);'>" + "</a>";
}
但是在單擊時,我得到了Uncaught SyntaxError:意外的標識符調試器未在openMyData
處openMyData
。 如果我給了像obj.VAl
這樣的值,那么它就被觸發了。 任何人都可以幫助我所缺少的。
onclick甚至代碼:
function openMyData(evt, obj){
var win = window.open('someURL',"","resizable=yes,menubar=no,status=yes,scrollbars=no", fullscreen = "1");
win.resizeTo(screen.availWidth, screen.availHeight);
win.moveTo(0, 0);
win.focus();
}
我希望我的對象在新窗口的范圍內。
你需要像這樣做JSON.stringify(obj)
if (obj.VAl) {
obj.text = "<a style='color:#0000ff' onClick='openMyData(event,'" + JSON.stringify(obj) + "')' href='javascript:void(0);'>" + "</a>";
}
用引號括起來的JSON.stringify(obj)
。 然后,您可以在openMyData
函數中openMyData
進行解析以獲取實際的對象。
function openMyData(evt, obj){
var win = window.open('someURL?objValue='+ obj,"","resizable=yes,menubar=no,status=yes,scrollbars=no", fullscreen = "1");
win.resizeTo(screen.availWidth, screen.availHeight);
win.moveTo(0, 0);
win.focus();
}
然后,在新窗口中,可以使用objValue
參數獲取該值,然后解析該值以獲取整個對象。
您錯過了json變量之間的逗號。
var obj = {
"Name": "USA",
"id": 1,
"CON": "NA",
"VAl": "TS"
}
if (obj.VAl) {
obj.text = "<a style='color:#0000ff' onClick='openMyData(event," + obj + ")' href='javascript:void(0);'>" + "</a>";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.