当页面重新加载时,jquery脚本可以正常工作

你好,我有一个页面,其中我已经在文本框的自动完成事件上使用了ajax,即一些列表填充在文本框中,因此选择的项目添加到网格中它仅适用于第一次页面重新排列但是在网格自动完成事件停止时添加项目之后为此工作我必须重新打开页面,但我不这样,因为当我刷新页面时,网格中添加的所有项目都将丢失,当我最终点击网格中的保存按钮项目时,我也有问题,我有另一个文本框在同一个我在自动完成事件中填充列表的页面,但是当我在控件中键入一些值时它也无法工作,只有当第一页被重新调整时它才有效,那么这个问题是什么

Purchase Order
PoNo
Item Info
Item
Grain
Unit
Cases
Long Short  
Qty
Rate
Amt
Remark
<asp:HiddenField ID="hdnCatCode" runat="server" Value='' /> <asp:HiddenField ID="hdnItem" runat="server" Value='' /> <asp:HiddenField ID="hdnUnitID" runat="server" Value='' />

         <%--    --%>  
<!---->
<!---->
Code
<!--
--> <asp:HiddenField ID="hdnFrght" runat="server" Value='' /> <asp:HiddenField ID="hdnTin" runat="server" Value='' /> <asp:HiddenField ID="hdnVat" runat="server" Value='' /> <asp:LinkButton ID="lnkCode" runat="server" Text='' OnClick="lnkCode_Click">code <asp:HiddenField ID="hdnParty" runat="server" Value='' /> <%--Print--%> Print <%--Delete--%> <!--
--> <%-- --%>

JQuery的

  $(document).ready(function() { SearchText(); SearchItem(); }); function SearchText() { $('input[name$="tbAuto"]').autocomplete({ source: function (request, response) { $.ajax({ url: "PartyList.asmx/FetchPartyList", data: "{ 'prefix': '" + request.term + "' }", dataType: "json", type: "POST", contentType: "application/json; charset=utf-8", success: function (data) { response(data.d); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); } }); }, minLength: 1, focus: function(event, ui) { $('input[name$="tbAuto"]').val(ui.item.Name); return false; }, select: function(event, ui) { $('input[name$="tbAuto"]').val(ui.item.Name); $('input[name$="tbHidden"]').val(ui.item.value); return false; } }).data('autocomplete')._renderItem = function(ul, item) { return $('
  • ').data('item.autocomplete', item).append('' + item.Name + '').appendTo(ul); }; } function SearchItem() { $('input[name$="txtitem"]').autocomplete({ source: function (request, response) { $.ajax({ url: "Itemslist.asmx/FetchItemList", data: "{ 'prefix': '" + request.term + "' }", dataType: "json", type: "POST", contentType: "application/json; charset=utf-8", success: function (data) { response(data.d); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); } }); }, minLength: 1, focus: function(event, ui) { $('input[name$="txtitem"]').val(ui.item.Name); return false; }, select: function(event, ui) { $('input[name$="txtitem"]').val(ui.item.Name); $('input[name$="hditem"]').val(ui.item.value); return false; } }).data('autocomplete')._renderItem = function(ul, item) { return $('
  • ').data('item1.autocomplete', item).append('' + item.Name + '').appendTo(ul); }; }
  • 当您使用UpdatePanel时,在UpdatePanel内的post之后,您需要重新初始化您的javascript,因为在重放时Dom已经更改并且之前的代码不再起作用。

    所以在你的代码上添加:

     $(document).ready(function() { var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_initializeRequest(InitializeRequest); prm.add_endRequest(EndRequest); SearchText(); SearchItem(); }); function InitializeRequest(sender, args) { } function EndRequest(sender, args) { SearchText(); SearchItem(); } 
    Interesting Posts