JS 控制超链接 双击 问题。

programeyonger 2011-08-05 03:12:54
var dbNumForVehicle=0;
function clkForVehicle(cnum)
{
dbNumForVehicle=cnum;
if(dbNumForVehicle==1){
window.location.href='<portlet:actionURL>
<portlet:param name="cmd" value="rmVehicle"/>
<portlet:param name="vehicleId">
<jsp:attribute name="value">
${chgVehicle.vehicleId}
</jsp:attribute>
</portlet:param>
<portlet:param name="policyNumber">
<jsp:attribute name="value">
${policyNumber}
</jsp:attribute>
</portlet:param>
<portlet:param name="year">
<jsp:attribute name="value">
${chgVehicle.year}
</jsp:attribute>
</portlet:param>
<portlet:param name="make">
<jsp:attribute name="value">
${chgVehicle.make}
</jsp:attribute>
</portlet:param>
<portlet:param name="vmodel">
<jsp:attribute name="value">
${chgVehicle.model}
</jsp:attribute>
</portlet:param>
</portlet:actionURL>';
return true;
}
if(dbNumForVehicle==2){
alert("Don't double click, waiting!!!...");
return false; //do nothing.
}
}

我想在超链接里,控制它,不让它双击提交(第二次拒绝!)
<a href="#" ondblclick="return clkForVehicle(2);" onClick="return clkForVehicle(1);">
...全文
325 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
豆虫 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 programeyonger 的回复:]
引用 5 楼 fanchuanzhidu 的回复:

两点问下:
用我的方法单双击能进到你的不同的分支了没?
为什么其他js没效果了?


可以了,不好意思。
[/Quote]
呵呵 没事 ^_^
yibey 2011-08-05
  • 打赏
  • 举报
回复
这里我想有个思路楼主不妨参考下,
当点击这个事件的时候修改这个标签的修改这个class为clicked,然后click的事件执行完后把class改成unclicked。然后在里面通过class的判断来阻止A标签激发2次
programeyonger 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 fanchuanzhidu 的回复:]

两点问下:
用我的方法单双击能进到你的不同的分支了没?
为什么其他js没效果了?
[/Quote]

可以了,不好意思。
豆虫 2011-08-05
  • 打赏
  • 举报
回复
两点问下:
用我的方法单双击能进到你的不同的分支了没?
为什么其他js没效果了?
programeyonger 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 madpc 的回复:]

ondblclick="return false" 不就行了

另外双击和点击两次不同,对于两次点击,第一次后禁掉点击就行了
[/Quote]

不可行,不可以简单的return false;

to 3楼的朋友, 超链接你是没有办法disable的,只能隐藏,隐藏的话也不可行。页面就少了元素了。
to 2楼的朋友,你的这个方法,好像不可行,页面的其他js效果都没有了。
打字员 2011-08-05
  • 打赏
  • 举报
回复
第一次点击后,就禁用掉a或者把a从页面上隐藏或删除掉
madpc 2011-08-05
  • 打赏
  • 举报
回复
ondblclick="return false" 不就行了

另外双击和点击两次不同,对于两次点击,第一次后禁掉点击就行了
豆虫 2011-08-05
  • 打赏
  • 举报
回复
这样肯定不行的 因为单击事件先触发
帮你改了下 试试吧

var count = 0;//定义全局变量
var timer;
function clickHandler()
{
count ++;
timer = window.setTimeout(function(){
if(count==1) {
clkForVehicle(1);//调用单击处理函数
}
else {
clkForVehicle(2)//调用双击处理函数
}
window.clearTimeout(timer)
count=0

},500)
}


<a href="#" onmouseup="clickHandler()"></a>

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧