如何用一系列文本为onclick事件做准备
How can I prepend an onclick event with a string of text
我有带有onclick事件的<a>
:
<a href="#" onclick="window.open('TrackPackage.asp', '', 'location=1,menubar=1,scrollbars=1,status=1,resizable=1,width=635,height=460'); return false;" class="nounderline">Track Your Package »</a>
我如何用http://www.example.com
预处理那些onclick事件,以便结果为:
<a href="#" onclick="window.open('http://www.example.com/TrackPackage.asp', '', 'location=1,menubar=1,scrollbars=1,status=1,resizable=1,width=635,height=460'); return false;" class="nounderline">Track Your Package »</a>
它必须与jQuery 1.4.2 兼容
其他人也提到过这样的事情,但我无法在1.4.2:中使用它
var link = $("a"); // I don't have enough info to tell you how to precisely get this instance
var originalOnClick = link.attr("onclick");
var part1 = "window.open('"; // this is always the same, right?
var part2 = originalOnClick.substr(part1.length); // the remainder, beginning with TrackPackage.asp
var newOnClick = part1 + "http://www.example.com/" + part2;
link.attr("onclick", newOnClick);
谢谢。
我认为window.open()
在这里不是个好主意。它会被大多数弹出窗口阻止程序阻止,如果你使用jQuery,你无论如何都不应该使用内联onclick
事件
你想做的事情可能可以通过一个简单的锚链接来实现:
<a href="trackPackage.asp" target="_blank"></a>
然后你可以做这样的事情:
var prependUrl = function($link, url) {
var oldUrl = $link.attr('href'),
newUrl = url + oldUrl;
$link.attr('href', newUrl);
}
prependUrl($('#yourLink'), 'http://www.example.com/');
编辑:
如果你不能控制html,你需要这样做,那么在onClick
属性上使用replace()
,比如:
$('a').attr('onClick', $('a').attr('onClick').replace('window.open(''', 'window.open(''http://example.com/'));
示例:http://jsfiddle.net/elclanrs/AH4As/
相关文章:
- 如何在执行此特定onclick事件时执行JavaScript函数
- 如何调用“;链接_;在onclick事件上使用Javascript
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 选择onclick事件jquery
- 如何刷新列表框内容onclick或blur事件
- 执行php函数的onclick事件的其他替代方案
- 动态创建OnClick事件Javascript
- onClick事件未触发reactjs
- 使用java脚本更改onClick事件中菜单选项卡的颜色
- 如何使用OnClick事件通过参数调用来调用PHP函数
- 第二个事件[onClick]不起作用
- 复选框事件onclick不起作用
- 如何在jQuery中为通知添加事件onClick
- JS函数不响应事件onclick
- 使用事件onclick访问if语句Javascript中变量的值
- 如何在事件onclick中抓取文本
- 如何绑定id < light >与事件Onclick
- 未找到JS事件OnClick
- 如何在js/prototype中触发具有特定顺序的事件(onclick)
- 无法触发javascript事件OnClick的复选框