![](/img/trans.png)
[英]HTML/Javascript: How to control refresh action without re-submit the form
[英]ajax form won't re-submit without page refresh
这里有点神秘的问题...
我在提交表单的页面上建立了一个按钮。 该表单嵌入了DIV,该DIV将更新以显示修改后的数据。
(位于智能模板中)
形成:
<form id='itempost_{$item.itemid}_{$item2.itemid}' method='post' class='itempost'>
<input type='hidden' name='item' value='{$item.itemid}'>
<input class='btn_text' type="submit" value="Send Item">
</form>
JS
$('.itempost').on('submit', function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url : 'item.php',
data: $(this).serialize(),
success : function (response) {
$("#update").eq(0).load("update.php?&t={$parentid}");
},
error: function (jXHR, textStatus, errorThrown) {
alert('not ok');
alert(errorThrown);
}
});
return false;
});
update.php
update.php包含的所有内容都是重建页面所需的最低要求,然后它将重建位于div #update中的模板部分。
$smarty->display('items.tpl');
第一次单击该按钮,效果很好,并且HTML内容发生更改,而对页面没有任何明显影响。
但是,第二次点击似乎没有到达JS的任何地方,只是重新加载了页面。 接下来的单击将按预期方式工作,使我相信这些操作是:
第一次单击:使用设计的AJAX提交表单第一次单击:使用设计的AJAX提交表单第三次单击:使用设计的AJAX提交表单第四次单击:刷新页面
等等
对我在这里做错的任何想法吗? 我已确保所有情况下均使用JS,检查所有内容,并用手指搜索一下数字-我只是看不到哪里出错了?
辉煌。
非常感谢yuriy636提供了答案,并感谢putvande帮助我整理了第二通电话。
现在,所有功能都可以完美运行
$(document).on('submit', '.itempost', function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url : 'item.php',
data: $(this).serialize(),
success : function (response) {
$("#update").load("update.php?&t={$parentid}");
},
error: function (jXHR, textStatus, errorThrown) {
alert('not ok');
alert(errorThrown);
}
});
return false;
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.