如何调用<a> tag?</a>中的onclick函数

时间:2013-10-10 14:51:21

标签: javascript php html

我想点击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/

提前致谢。

4 个答案:

答案 0 :(得分:22)

单独尝试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

这可能会帮助你理解你的问题。

答案 1 :(得分:8)

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

  • $leadID似乎是一个php字符串。确保将其打印在正确的位置。还要注意传递自己的字符串所涉及的所有风险,例如cross-site scriptingSQL injection漏洞。没有理由让面向互联网的生产代码无法运行on a solid framework
  • Javascript中的字符串(如PHP,通常是HTML)需要用"'个字符括起来。由于您已经在"'内,因此无论您选择哪种方式,都需要转义\'要转义PHP引号,要么&apos;要转义HTML引号。
  • <a /> elements通常用于“超级”链接,并且几乎总是使用href属性来指示其目的地,如下所示:<a href="http://www.google.com">Google homepage</a>
  • 您正试图在用户点击时加倍观看。为什么?因为标准点击同时激活链接(导致浏览器导航到任何URL,甚至执行Javascript),并“触发”onclick事件。提示:向Javascript事件添加return false;以禁止默认行为。
  • 在Javascript中,onclick并不代表任何内容。那是因为onclick is a property,而不是变量。必须引用一些对象,因此它知道我们正在谈论的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 =期待尚未运行的内容。如果您想现在指定一些参数(就像我上面没有使用function),您可以将事物包装在reload块中以表示应该稍后运行的代码:<a href="javascript:window.onclick = function () { window.open( ... ) };"> ...
  • 您是否知道甚至不需要使用Javascript来通知浏览器在新窗口中打开链接?有一个特殊的目标属性:<a href="http://www.google.com" target="_blank">Google homepage</a>

希望这些有用。

答案 2 :(得分:2)

使用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/

答案 3 :(得分:2)

您应该阅读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/