我正在尝试刷新DIV中的数据而不重新加载整个页面。因此,用户在CompanyName文本框中输入一个名称并按Enter键,我希望表单提交,然后我的代码将处理,从数据库中获取新数据,然后显示回“div1”。
我在下面有这些DIV。
<div id="div1-wrapper">
<div id="div1" style="border:solid 1px red; width: 100%;">
<table width="90%" align="center" class="RowDetail">
<tr>
<--- The Data Refreshing Display Here --->
</tr>
</div>
</div>
<form name="form1" id="form1" method="post" action="PurchaseRequestList.asp" onsubmit="return validSearch();">
<input type="text" name="CompanyName" id="CompanyName" value="" class="box2">
</form>
这是我到目前为止所尝试过的,但没有运气......
$('#CompanyName').on('keypress', function(e) {
if (e.keyCode == 13)
{
var url = 'PurchaseRequestList.asp';
$.ajax({
method: 'post',
url: url + '?#div1',
success: function(data) {
$('#div1-wrapper').load(data);
}
});
提前致谢,
答案 0 :(得分:0)
这是因为您在表单元素上调用.submit()
。你应该做的是,使用jQuery ajax提交表单数据并使用成功回调来更新div。要获取表单数据,您需要使用$.serialize()
;尝试这样的事情。
$( "form" ).on( "submit", function( event ) {
var data = $( this ).serialize();
$.ajax({
method: 'post',
data: data,
url: url + '?#div1',
success: function(res) {
$('#div1-wrapper').load(res);
}
});
});