2013-04-26 2 views
0

У меня есть Label, a Textbox и Button на Page.Достижение UpdatePanel-Functionality в MVC

При вводе значения в Textbox Я хочу показать что-то на Label. Button также получает эту информацию и запускает некоторый код.

В ASP.NET я просто поставил Ajax UpdatePanel вокруг этих трех элементов управления, добавив два события на TextBox. TextChange и Button.Click и реагировать на обратную передачу.

Как это сделать в MVC?

ответ

1

Жизненный цикл MVC и webforms оба разные. MVC не о сервере управления .... VIEWSTATE ... нет страница жизненного цикла событий в веб-форме ...

What is the 'page lifecycle' of an ASP.NET MVC page, compared to ASP.NET WebForms? надеюсь, что это помогает ..

Теперь подходит к вашей точке.

если вы хотите отобразить что-то в метке при вводе значения в текстовое поле, вы должны использовать клиентский скрипт смотрите пример ниже

JavaScript

<script type="text/javascript" language="javascript"> 
     function textCounter(field, field2, maxlimit) { 
      var countfield = document.getElementById(field2); 
      if (field.value.length > maxlimit) { 
       field.value = field.value.substring(0, maxlimit); 
       return false; 
      } else { 
       countfield.value = maxlimit - field.value.length; 
      } 
     } 
</script> 

Ваша страница Html

<%using (Html.BeginForm("Index", "Account", FormMethod.Post)) // here index is a ActionName, Account is a controller name 
     {%> 

<input type="text" name="Message" onkeyup="textCounter(this,'counter',208)"/> 

<label><input disabled maxlength="3" size="3" value="208" id="counter" /></label> 

<input type="submit" value="Send" /> 
<%}%> 

Здесь
Функция textCounter() в событии keyup в текстовом поле отображает значение в метке,

кнопку отправки представит форму, назвав действия «индекс» на контроллере «Счет», увидим, каким образом действия акта

public class AccountController : Controller 
{ 
    [HttpPost] 
    public ActionResult index(FormCollection result) 
    { 
    string TextBoxValue=result["Message"]; 
    return view("yourviewname"); 
    } 
} 

я надеюсь, что этот пример может помочь вам ..

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