如何在 <a> 标记中调用 onclick 函数
how to call a onclick function in <a> tag?
我想在点击 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 引号,或'
转义 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/
相关文章:
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 如何在Javascript函数调用中循环变量
- Javascript:应为赋值或函数调用,但实际看到的却是表达式
- 如何远程检查JavaScript应用程序的函数调用堆栈
- javascript函数调用不起作用
- 为什么这个函数调用会破坏程序并导致未定义的变量
- 如何通过函数调用设置图像的src
- 从全局函数调用Ember控制器上的方法
- 为什么Jquery$.ajax在函数调用中触发所有statusCode,即使调用成功
- JavaScript函数调用(arg1)(arg2)
- 打印链接时,将javascript函数调用到链接中
- 在函数调用中封装数据除了隐藏数据之外还有什么优点
- 无法从JavaScript中的函数调用对象属性
- 对中的函数调用进行排序是回调的唯一方法
- 函数调用方法有什么用
- Javascript:JSHint:应为赋值或函数调用,但实际看到的却是表达式
- HTML5(Bootstrap)通过函数调用运行动画
- 函数调用不起作用
- 函数中的Javascript函数调用