我正在编写一个表单,需要一个类似stackoverflow的函数:“您已经开始编写或编辑帖子。”。
我已经查看了stackoverflow的代码,但是我不知道如何将其应用到我的简单表单中。这是他们在question.js文件中的代码:
function initNavPrevention(b) {
if (b.which == "undefined") {
return
}
var a = $("#wmd-input");
a.unbind("keypress", initNavPrevention);
setConfirmUnload("You have started writing or editing a post.", a)
}
其中一个函数会触发这个操作(我不知道 c 是什么):
if (c) {
e.keypress(initNavPrevention)
}
最后,他们使用setConfirmUnload(null);
来禁用它,我猜是这样。
我的情况很简单。我有一个页面,在该页面上通过AJAX加载了一个<form />
,我想防止当加载这个表单时,用户在不点击提交按钮或者如果用户点击取消,则禁用该表单,从而防止离开该页面。
有了这段代码,有人能告诉我如何将其包含在我的网站中吗?
这是我用于加载表单的AJAX函数:
$("#projects_historics_edit_part_1").click(function(){
$("#ajax-loader").fadeIn('normal');
$.ajax({
url: BASE_URL + 'projects/ajax/get_historics_edit_part_1/' + PROJECT_ID,
type: "POST",
success: function(data) {
$("div#projects_historics_part_1").html(data);
$("#client").autocomplete(client_autcomplete_options);
var inicofin = $("#initdate, #findate").datepicker(initdate_datepicker_options);
}
});
$("#ajax-loader").fadeOut("normal");
return false;
});
提前谢谢!