gpt4 book ai didi

javascript - 如何使用动态参数在 javascript 中创建 anchor 链接?

转载 作者:行者123 更新时间:2023-11-30 10:37:00 24 4
gpt4 key购买 nike

我正在尝试在用户点击另一个链接时创建一个 anchor 链接。
当我单击第一个链接时,将引发 onclick 事件并使用 JavaScript 生成另一个链接,但生成不正确。

这是我在 JavaScript 中的 anchor 链接:

temp="<li><a href='#' onclick='showMenu3('"+menu2[0]+"','"+menu2[2]+"')'>
<img src='images/noImageSmall.png'/>"+menu2[2]+"</a></li>";

但是在源码中生成如下:

 <li><a href="#" onclick="showMenu3(" 139','invite="" a="" friend')'="">
<img src="images/noImageSmall.png">Invite a friend</a></li>

如何使用 JavaScript 生成以下链接?

 <li><a href="#" onclick="showMenu3('139','invite friend')">
<img src="images/noImageSmall.png">Invite a friend</a></li>

最佳答案

这会起作用:

var temp = '<li><a href="#" onclick="showMenu3(' + menu2[0] + ', \'' + menu2[2] + '\')"><img src="images/noImageSmall.png"/>' + menu2[2] + '</a></li>';

毫不奇怪,我同意其他人的看法,这不是一个好的做法。它很容易出错,很容易生成无效的标记(这会引入更多错误)并且您必须真正理解字符串连接。

我的首选方法是这样的:

var li = document.createElement('li'),
a = document.createElement('a'),
node = document.createTextNode(),
img = document.createElement('img');
node.textContent = menu2[2];
img.src = "images/noImageSmall.png";
a.href = '#';
a.onclick = function(e) {
var arg1 = menu2[0],
arg2 = menu2[2];
showMenu3(arg1, arg2);
e = e || window.event;
e.cancelBubble = true;
if (e.stopPropagation) {
e.stopPropagation();
}
return false;
};
a.appendChild(img);
a.appendChild(node);
li.appendChild(a);
document.body.appendChild(li);

这是一个演示这两种技术的 fiddle :http://jsfiddle.net/mLrbP/

使用 DOM 检查器查看生成的标记。

关于javascript - 如何使用动态参数在 javascript 中创建 anchor 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13398043/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com