4 回答 4

37

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

可能这将帮助您了解您的问题。

于 2013-10-10T14:54:17.310 回答
12

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

  • $leadID似乎是一个php字符串。确保它打印在正确的位置。还要注意传递您自己的字符串所涉及的所有风险,例如跨站点脚本SQL 注入漏洞。没有任何理由让面向 Internet 的生产代码不在一个可靠的框架上运行。
  • Javascript 中的字符串(如 PHP,通常是 HTML)需要用"or'字符括起来。既然你已经在两个"and里面了',你会想逃离你选择的任何一个。\'转义 PHP 引号,或&apos;转义 HTML 引号。
  • <a />元素通常用于“超”链接,并且几乎总是带有一个href属性来指示它们的目的地,例如:<a href="http://www.google.com">Google homepage</a>.
  • 当用户点击时,您正试图加倍观看。为什么?因为标准点击会激活链接(导致浏览器导航到任何 URL,即使是执行 Javascript 的 URL),并“触发”onclick 事件。提示:将 a 添加return false;到 Javascript 事件以抑制默认行为。
  • 在 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=需要一些尚未运行的东西。如果您现在想指定一些参数(就像我没有在上面使用) ,您可以将内容包装在一个function块中以指示稍后应该运行的代码:reload<a href="javascript:window.onclick = function () { window.open( ... ) };"> ...
  • 您知道您甚至不需要使用 Javascript 来指示浏览器在新窗口中打开链接吗?有一个特殊的目标属性:<a href="http://www.google.com" target="_blank">Google homepage</a>.

希望这些有用。

于 2013-10-10T15:27:55.017 回答
4

您应该阅读onclickhtml 属性和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/

于 2013-10-10T15:00:10.627 回答
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/

于 2013-10-10T14:53:15.360 回答