Как я могу использовать элемент управления Modal Pop Up в ASP.NET, похожий на окно сообщения WinForms? - PullRequest
0 голосов
/ 17 июля 2011

Я строю форму, где обязательная проверка поля должна быть проверена.Я не использую валидатор asp.Я использую валидатор JQuery, например

function checkRequiredInputs () {

$("#frmSaleSubmissionInfo").validate({  
    rules:{
        txtFName:{required: true},
        txtLName:{required: true},
        txtAddress:{required: true},
        txtPhone:{required: true}
    },
    messages:{
        txtFName:"Enter Name",
        txtLName:"Enter Name",
        txtAddress:"Enter Address",
        txtPhone:"Enter Phone Number"
    }
});

Это моя проверка на стороне клиента.Я использую C # в моем коде позади страницы.Теперь, если я отключил опцию allowjavascript в своем браузере, насколько я знаю, он не разрешит javascript.Поэтому я также делаю проверку на стороне сервера для обязательного поля.Но, поскольку ASP.NET не имеет элемента управления окном сообщений, у меня возникают проблемы с тем, чтобы пользователь знал, какое поле он оставляет пустым.Есть ли способ использовать элемент управления, такой как окно сообщения, чтобы показать или сообщить пользователю, какие поля необходимы для успешного заполнения формы?

Ответы [ 3 ]

1 голос
/ 18 июля 2011

На мой взгляд, лучше всего подходит для ваших требований использование ASP.NET AJAX Toolkit ValidatorCallout , который поможет вам быстрее создать такое решение.

Но если вы не хотите смешивать два фреймворка javascript (ASP.NET AJAX и jQuery), то срок действия можно истечь здесь , где вы можете найти решение, как работать с проверкой и jQuery ,

0 голосов
/ 18 июля 2011

Без javascript я не могу представить простой способ воссоздания модального типа всплывающего окна.Вам нужно было бы выполнить постбэк и перерисовать страницу с DIV, блокирующим страницу, и еще одним div поверх нее с ошибками.

Вы всегда можете передать ошибки в тег рядом снажмите кнопку отправки и позвоните ей через день.

0 голосов
/ 17 июля 2011

Если вы хотите модальное всплывающее окно, просто отправьте javascript с кода сервера:

Response.Write(
    "<script type='text/javascript'>alert('A required field is missing.');</script>");

alert() - это функция JavaScript. Response.Write() добавляет элемент <script> в конец HTTP-ответа (т. Е. Отображаемой HTML-страницы).

Более элегантный подход - использовать ClientScriptManager для регистрации сценария запуска:

protected void Page_Load(object sender, EventArgs e) {
    this.ClientScript.RegisterClientScriptBlock(this.GetType(), 
        "RequiredFieldValidationScript", 
        "alert('A required field is missing.');", 
        true);
}

Код javascript alert('A required field is missing.'); будет выполнен после обратной передачи.

Смотри также: http://www.4guysfromrolla.com/articles/021104-1.2.aspx

...