0

asp.net更新パネル内にいくつかの基本的なhtmlがあります。livequeryを使用して、オートコンプリート、ブラー、キーダウンイベントを設定し、更新パネルが部分的なページの読み込みを行った後も、これらすべてが引き続き接続されるようにしました。ページが最初に読み込まれるとき、すべてのイベントは正常に機能しますが、更新パネルが部分的なページの再読み込みを行った後、livequeryに接続されたイベントはどれも引き続き機能しません。livequeryおよびupdateパネルに既知の問題はありますか?

HTML:

<asp:UpdatePanel ID="upData" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <asp:DataList ID="dlData" runat="server"
            DataSource='<%# this.Data %>' DataKeyField="ID">
            <ItemTemplate>
                <table>
                    <tr>
                        <th class="required">Location</th>
                        <td><asp:TextBox ID="txtFromLocation" MaxLength="10" CssClass="searchlocation fromlocation required" runat="server" Text='<%# Eval("FromLocation")%>'/><asp:RequiredFieldValidator ID="rvalFromLocation" runat="server"
            ControlToValidate="txtFromLocation" ValidationGroup="leg">*</asp:RequiredFieldValidator></td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:DataList>
     </ContentTemplate> </asp:UpdatePanel>

そして、私は私のjavascriptを持っています。通常、それは他のコードの束を持っています、しかし私はそれをこれに減らすことができます、そしてそれでも問題があります:

$(document).ready(function() {
    $(".searchlocation").livequery(function() {                       
        $(this).keydown(function(event) {alert('test');});   

        ...

        $(this).autocomplete(...);
    });
});
4

1 に答える 1

2

jQuery 1.3+ を使用している場合は、次.live()のようにプラグインなしで使用できます。

$(function() {
  $('.searchlocation').live('keydown', function(event) {
    alert('test');
  });
});
于 2010-05-03T17:37:18.087 に答える