2013-10-25 49 views
0

我有一个函数执行的onclick:多功能的JavaScript停止其他如果警报取消

function delete_image() { 
     //alert; 
     var result = confirm('Are you sure you want to delete this item?'); 
     if(result) { ....delete the image.... } 
     } 

function new_image() { ....Do SOmething.... } 

然后我打电话,通过

<a onclick="setNewUploadOnDelete()">Delete</a> 

我需要,如果delete_image功能的“警报”是“取消“那么就停止第二个功能。我尝试下面的代码,但不工作。

function setNewUploadOnDelete() { 
var retvalue; 
retvalue = delete_image(); 
if(retvalue == false) { return retvalue; } 
return = new_image(); 
} 

请问有什么建议吗?我们使用Conditional Statements

function setNewUploadOnDelete() { 
    return delete_image ? new_image() : false; 
} 

这里:

+0

您不能暂停执行代码。你只能“跳转”到另一个代码。这就是电脑的工作方式。你的delete_image()应该只是创建一个问题面板,而当用户按下确认按钮时,删除将在另一个功能中完成。 –

回答

1

setNewUploadOnDelete可重构来。这很简单,你可能不需要一个功能来做到这一点。

另一方面,使用onclick来触发JavaScript的表现通常不是一个好主意,因为它的性能和关注点分离。请阅读adding event listeners

+1

哈哈我喜欢你的方式更好。 – Deryck

+0

这很简单,很好。不过,我需要retvalue来做到这一点。 –

+0

如果delete_image为true,则函数返回'new_image()',否则返回'false'。 – SomeKittens