我正在我的应用中显示一个确认框。当用户点击Okay
时,我关闭窗口
当用户点击Cancel
时,我只想停留在同一页面上。
我应该写什么代替DO_NOTHING?
<a href="#" onclick="confirm('Do you wan to close the application ?')?window.close():DO_NOTHING')">Close the application ?</a>
如果我把它保持为空它就行不通。如果我写任何随机字符串它可以工作但显示string undefined
错误。
答案 0 :(得分:21)
尝试使用void(0)
<a href="#" onclick="confirm('Do you wan to close the application ?')?window.close():void(0)')">Close the application ?</a>
答案 1 :(得分:13)
请改为:
onclick="if (confirm('Do you wan to close the application ?')) window.close();"
如果您不打算“完全”使用它,则无需使用x?y:z
。
答案 2 :(得分:3)
尝试return false;
或null
// What should I write in place of DO_NOTHING
<a href="#" onclick="confirm('Do you wan to close the application ?')?window.close():return false')">Close the application ?</a>
答案 3 :(得分:2)
void(0)
或null
可以,但请考虑使用普通if(confirm(...))
答案 4 :(得分:1)
我认为只需要return
或return false
。
我通常不使用内联javascript,如果onClick代码在附加到onClick事件的函数中,你可能会使用Event.cancel()或类似的... (如果这是实际的链接,如果事件冒出来,它就不会做任何事情,只跳转到一个不存在的空白锚点)
答案 5 :(得分:1)
return false;
应该可以解决问题。
答案 6 :(得分:0)
尝试像这样的空对象
<a onclick="confirm('xyz')?window.close():{}">well</a>
事实上,像:function(){}
eval()
这样的任何蠢事都应该能够很好地完成工作。
答案 7 :(得分:0)
onclick="confirm('Do you wan to close the application ?')?window.close():() => {}')"
返回空对象的箭头函数,基本上什么都不做
答案 8 :(得分:0)
为什么不直接使用 &&
?
<a href="#" onclick="confirm('Do you want to close the application ?') && window.close()">Close the application ?</a>
答案 9 :(得分:-1)
尝试:
onclick="return confirm('Do you wan to close the application ?')"
答案 10 :(得分:-1)
condition ? function call : function call
不是怎么样的?:有效。
应该是
eval(condition? function call : function call/ blank string)