努力的xian鱼
2019-05-24 17:29
首先贴上我删除函数的代码:
function cancel(obj){
var row = obj.parentNode.parentNode;
var x = row.parentNode.removeChild(row);
x=null;
}
为什么<a href="javascript:cancel(this);" >执行不了函数,要用onclick()才可以实现
例如,<a href="javascript:;" onclick="cancel(this)" >
<a href='javascript:function()'>这样写是为了让这个链接不要链接到新页面转而执行一段js代码,和onclick能起到同样的效果,一般来说,如果要调用脚本还是在onclick事件里面写代码,而不推荐href='javascript:function()' 这样的写法。因为href属性里面设置了js代码后,在某些浏览器下可能会引发其他不必要的事件。而且onclick事件会比href属性先执行,所以会先触发 onclick 然后触发href。所以如果不想页面跳转,可以设置onclick里面的js代码执行到最后返回一个false,这样href里面的东西就不会执行了。
在ajax应用程序中,多写着下面的这样 ,以表示这个链接不跳转,而执行一段js脚本。
<a href="javascript:void(0);" onclick="function()"></a> 或者
<a href="javascript:;"onclick="function()"></a>
void(0) 只是用来计算一个空值,其实也是什么事情都不做,而分号“;”则表示是一个空的js语句,这样就不会有任何其他跳转发生了。
所以你就记住如果要调用方法,还是写在onclick=“function()”里就好了。
javascript: 是一个伪协议,其他的伪协议还有 mail: tel: file: 等等。
<a id="jsPswEdit" class="set-item" href="javascript:;">修改密码</a>1
javascript:是表示在触发默认动作时,执行一段JavaScript代码,而 javascript:; 表示什么都不执行,这样点击时就没有任何反应。
onclick="cancel(this)" 通过鼠标事件onclick调用函数
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题