2013-08-20 4 views
0

Я использую jquery datepicker. У меня есть следующий вход в UpdatePanel:ввод vs .net texbox: ввод очищается при вводе нажата, asp: текстовое поле не

<input id="DateMask" type="text" /> 

и JS код:

$(".datepicker").datepicker({ 
        changeMonth: true, 
        changeYear: true 
       }); 

    $(document).ready(function() { 
    SetD(); 
    }); 

Использование JQuery:

<script src="/scripts/jquery-1.9.1.js" type="text/javascript"></script> 
    <script src="/scripts/jquery-ui.js" type="text/javascript"></script> 

Когда я нажимаю войти на моей странице он очищает мой вход, и Я ничего не отправляю на сервер. Мне удалось решить проблему, написав <asp:textbox> вместо <input>, но почему это так?

and found the topic here

Но еще раз, почему это работает именно так?

ответ

1

Это связано с различием между «стандартными» элементами управления HTML и элементами управления .NET.

Когда вы используете стандартный HTML <input> в .net, вы отвечаете за все, что с ним связано - довольно просто, заселенность начального значения и последующий поиск через Request.Form.

Преимущество, которое контролирует сервер, включая, как вы заметили, <asp:textbox> - принести, что структура ASP.Net теперь обрабатывает большинство беспорядочных частей для вас. Таким образом, любой текст, который вы вводите, доступен в коде, как свойство объекта, и когда элемент управления возвращается на страницу, текстовое поле повторно заполняется с тем же значением, которое у него было заранее.

Я бы посоветовал прочитать несколько справочных тем, которые обсуждают это, в первую очередь обзор управления серверами ASP.Net на http://support.microsoft.com/kb/306459.

+0

okkay спасибо))))))))) – user2114177

Смежные вопросы