几天后,我遇到了javascript进程的问题。 事实上,在一个页面中,用户可以添加和删除"技能"。这个过程是用Javascript实现的。
因此,当用户使用此表单确认对技能的压制时:
<form onsubmit="return submitFormsupprCompetence(this,'skill');" method="POST">
...
<input name="confirmSupprCompetence" id="confirmSupprSkill" type="submit" value="Confirm">
</form>
功能&#39; submitFormSupprCompetence(形式,技能)&#39;被称为:
function supprCompetence_mafiche(form_serialize,skill){
var data = {
"formulaire": form_serialize,
"skill": skill,
};
$.ajax({
'type' : 'POST',
'dataType' : 'json',
'url' : "/supprSkill",
'data': data,
success: function(json){
// I detach the div of skill :
$("#skill").detach();
// I load the div containing all div (id='theskills') of skill
$('#theskills').load(document.URL + ' #theskills');
},
error:function(data){
alert("Error in Suppression");
}
});
return false;
}
所以抑制效果 但是在抑制之后,用户无法在不刷新页面的情况下添加技能。我使用它的情况就是这样:
<form id="formAddSkill" method="POST">
$(document).ready(function() {
$("#formAddSkill").submit(function(evt) {
evt.preventDefault();
addSkill();
return false;
});
});
但是,当我在“提交”中直接调用添加功能时,抑制后的添加就会起作用。 :
<form onsubmit="addSkill();return false;" id="formAddSkill" method="POST">
快速添加功能&#39; addSkill()&#39;是:
function addSkill(){
var data = {
"skill": "skill_lambda",
};
$.ajax({
'type' : 'POST',
'dataType' : 'json',
'url' : "/addSkill",
'data': data,
success: function(json){
// I load the div containing all div (id='theskills') of skill like in suppression form :
$('#theskills').load(document.URL + ' #theskills');
},
error:function(data){
alert("Error in adding...");
}
});
}
return false;
}
那么,为什么当我使用 onsubmit=...
而不是在我使用JQuery函数时 $(document).ready(function(){ $("#formAddSkill").submit(function(evt)...
吗