我一直试图让确认框工作,我正在使用php和jquery在点击删除链接时显示确认框,实际代码:
$(document).ready(function(){
if (jQuery("a.delete-link").length > 0) {
$("a.delete-link").bind("click", function(){
return confirm("Sunteti sigur ca doriti sa stergeti?");
});
}
});
并调用链接:
<a href="javascript:void(0);" class="formSubmit delete-link" id="sterge">sterge</a>
该链接用于在点击时提交表单,其代码为:
$(document).ready(function(){
if ($(".formSubmit").length > 0) {
if ($(".formSubmit").parents("form").find("input:submit").length == 0) {
$(".formSubmit").parents("form").append('<div style="width:1px;height:1px;overflow:hidden;"><input style="width:0;height:0;overflow:hidden;" type="submit" /></div>');
}
$(".formSubmit").click(function(){
$(this).parents("form").trigger("submit");
return false;
});
}
});
我确实收到了确认对话框,但是我选择了任何选项,表单提交并且调用了删除操作..任何想法我做错了什么?
答案 0 :(得分:4)
将确认绑定到表单的onSubmit
。你会以这种方式省去很多麻烦,无论表格如何被提交,你都会得到确认。
$( document ).ready ( function () {
$( 'selector for your form' ).submit ( function () {
return confirm ( 'Are you sure ...?' );
} );
} );
答案 1 :(得分:1)
您有两个绑定到锚标记的点击事件。第一个事件显示确认,第二个事件提交表单。
仅在用户确认时触发表单提交:
$(document).ready(function(){
if ($(".formSubmit").length > 0) {
if ($(".formSubmit").parents("form").find("input:submit").length == 0) {
$(".formSubmit").parents("form").append('<div style="width:1px;height:1px;overflow:hidden;"><input style="width:0;height:0;overflow:hidden;" type="submit" /></div>');
}
$(".formSubmit").click(function(){
if ($(this).hasClass('delete-link') && confirm("Sunteti sigur ca doriti sa stergeti?"))
{
$(this).parents("form").trigger("submit");
}
return false;
});
}
});
答案 2 :(得分:0)
你能用这个:
<a href="#" onclick"return javascript:void(0);" ... />