2011-11-01 44 views
8

Tôi có một asp: TextBox liên kết với một DatePicker jquery. Đầu vào này có một onTextChangedEvent cập nhật một Literal Control.DatePicker biến mất sau khi postback

Tất cả mã này nằm bên trong UpdatePanel để Kiểm soát văn học thay đổi nhưng trang không làm mới.

Sự cố tôi đang gặp phải là khi sự kiện kích hoạt, hình ảnh hiển thị DatePicker biến mất. Dưới đây là một đoạn mã của tôi:

<asp:UpdatePanel ID="UpdatePanel" runat="server"> 
    <ContentTemplate> 

     <asp:TextBox runat="server" OnTextChanged="EditFromDate_TextChanged" 
     AutoPostBack="true"></asp:TextBox> 

    </ContentTemplate> 
</asp:UpdatePanel> 

Sau đó, tôi có:

$(document).ready(function() 
{ 
    $("#EditFromDate").datepicker({ ... }); 
}); 

Tôi có nên đặt mã mà khởi DatePicker ở nơi khác? Tôi đã thử đặt nó trong Tải trang bằng Page.RegisterStartup nhưng kết quả tương tự.

Cảm ơn!

Trả lời

13

Sử dụng pageLoad, nó cháy trên postbacks phần:

function pageLoad() { 
     $("#EditFromDate").datepicker({ ... }); 

    } 

$(document).ready() and pageLoad() are not the same!

+0

Cảm ơn !! Vì vậy, khi nào $ (tài liệu) .ready() cháy? Và tại sao việc đặt mã này trong sự kiện Page_Load không hoạt động? – Gonzalo

+0

Xem bài viết. Nếu bạn đặt mã document.ready trong RegisterStartupScript vào postback nó cũng sẽ hoạt động. –

Các vấn đề liên quan