0

我得到了一个Label,一个TextboxButton一个Page

在输入值时,Textbox我想在Label. Button还获取该信息并运行一些代码。

在 ASP.NET 中,我只需UpdatePanel在这三个控件周围放置一个 Ajax,在TextBox. TextChange并对Button.Click回发做出反应。

我如何在 MVC 中做到这一点?

4

1 回答 1

1

MVC 和 webforms 的生命周期都是不同的。MVC 与服务器控件无关....视图状态... Web 表单中没有页面生命周期事件...

与 ASP.NET WebForms 相比,ASP.NET MVC 页面的“页面生命周期”是什么? 希望这可以帮助..

现在谈到你的观点。

如果您想在向文本框中输入值时在标签中显示某些内容,则必须使用客户端脚本,请参见下面的示例

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" />  
<%}%>

此处
文本框中 keyup 事件的 textCounter() 函数将在标签中显示值,

提交按钮将提交表单,在控制器“帐户”上调用操作“索引”,请参阅下面的操作如何操作

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

我希望这个例子可以帮助你..

于 2013-04-29T07:04:23.687 回答