如何在 <a> 标记中调用 onclick 函数

how to call a onclick function in <a> tag?

本文关键字:函数 调用 onclick      更新时间:2023-09-26

我想在点击 1 时打开一个新窗口

$leadID = "<a href='javascript:onclick=window.open(lead_data.php?leadid=1, myWin, scrollbars=yes, width=400, height=650);'>1</a>";

它没有向我显示错误。还有其他方法可以打开新窗口吗?

这是小提琴http://jsfiddle.net/ankurdhanuka/uwypv/

单独尝试 onclick 函数,它可以让你访问执行你的函数,该函数可用于打开一个新窗口,为此,你首先需要创建一个 javascript 函数,在那里你可以定义它,在你的锚标签中你只需要调用你的函数。

例:

function newwin() {              
 myWindow=window.open('lead_data.php?leadid=1','myWin','width=400,height=650')
}

了解如何从锚标记调用它

<a onclick='newwin()'>Anchor</a>

更新

访问此 jsbin

http://jsbin.com/icUTUjI/1/edit

也许这会帮助你理解你的问题。

有趣!这里有几件事需要梳理:

  • $leadID似乎是一个php字符串。确保它打印在正确的位置。还要注意传递自己的字符串所涉及的所有风险,例如跨站点脚本和 SQL 注入漏洞。真的没有理由让面向互联网的生产代码不能在一个坚实的框架上运行。
  • Javascript中的字符串(如PHP和通常的HTML(需要用"'字符括起来。由于你已经在"'里面,你会想要逃离任何你选择的。 ''转义 PHP 引号,或&apos;转义 HTML 引号。
  • <a />元素通常用于"超链接",并且几乎总是带有href属性来指示其目的地,如下所示:<a href="http://www.google.com">Google homepage</a>
  • 您正在尝试在用户单击时加倍观看。为什么?因为标准单击既会激活链接(导致浏览器导航到任何URL,即使是执行Javascript的URL(,又会"触发"onclick事件。提示: 向 Javascript 事件添加return false;以禁止默认行为。
  • 在Javascript中,onclick本身没有任何意义。这是因为onclick是一个属性,而不是一个变量。必须引用某个对象,这样它才能知道我们在谈论谁onclick!一个这样的对象是 window .你可以写<a href="javascript:window.onclick = location.reload;">Activate me to reload when anything is clicked</a>.
  • 在 HTML 中,onclick可以单独表示某些内容,只要它是 HTML 标记的一部分:<a href="#" onclick="location.reload(); return false;"> 。我敢打赌你已经想到了这一点。
  • 这两种=作业之间的巨大差异。Javascript =期望一些尚未运行的东西。如果您现在想指定一些参数(就像我上面没有用 reload (: <a href="javascript:window.onclick = function () { window.open( ... ) };"> ... .function
  • 您是否知道您甚至不需要使用 Javascript 来向浏览器发出信号以在新窗口中打开链接?有一个特殊的目标属性:<a href="http://www.google.com" target="_blank">Google homepage</a>

希望这些有用。

您应该阅读 onclick html 属性和window.open()文档。下面是你想要的。

<a href='#' onclick='window.open("http://www.google.com", "myWin", "scrollbars=yes,width=400,height=650"); return false;'>1</a>

JSFiddle: http://jsfiddle.net/TBcVN/

onclick用作a的属性,而不是href的一部分

<a onclick='window.open("lead_data.php?leadid=1", myWin, scrollbars=yes, width=400, height=650);'>1</a>

小提琴:http://jsfiddle.net/Wt5La/