问题描述
第一次加载<%=Model.uname%>和<%=Html.TextBoxFor(m=>m.uname)%>都正常显示1然后点按钮做POST提交<%=Model.uname%>正常做了加法但是<%=Html.TextBoxFor(m=>m.uname)%>还是1代码如下<%using(Html.BeginForm("Index","Home")){%><%=Model.uname%><%=Html.TextBoxFor(m=>m.uname)%><inputtype="submit"value="提交"/><%}%>publicActionResultIndex(){uinfoui=newuinfo();ui.uname="1";returnView(ui);}[HttpPost]publicActionResultIndex(uinfouif){inti=System.Int32.Parse(uif.uname);i=i+2;uif.uname=i.ToString();returnView(uif);}
解决方案
解决方案二:
ViewData["name"]=i.tostring();这样去取呢、有没有调试过是不是你的post方法都没有取到之前的1的值呢
解决方案三:
引用1楼haohaoxuexihere的回复:
ViewData["name"]=i.tostring();这样去取呢、有没有调试过是不是你的post方法都没有取到之前的1的值呢
取的到TEXTBOX改任何值点击提交前面的值都会+2但是他本身不变写多少就是多少
解决方案四:
post到服务器端之后<%=Html.TextBoxFor(m=>m.uname)%>
这个值是不会变的,<%=Model.uname%>
这个值会是新的值~
解决方案五:
post到服务器从服务器回传的Model已经被处理了,用<%=Model.uname%>
的方式是显示的从服务器端返回的最新值。<%=Html.TextBoxFor(m=>m.uname)%>
是客户端状态的
解决方案六:
引用4楼zuo_hy的回复:
post到服务器从服务器回传的Model已经被处理了,用<%=Model.uname%>的方式是显示的从服务器端返回的最新值。<%=Html.TextBoxFor(m=>m.uname)%>
是客户端状态的
那这样的话第一次加载时为什么TextBox里会有值呢
解决方案七:
引用5楼baidu_24732841的回复:
Quote: 引用4楼zuo_hy的回复:
post到服务器从服务器回传的Model已经被处理了,用<%=Model.uname%>的方式是显示的从服务器端返回的最新值。<%=Html.TextBoxFor(m=>m.uname)%>
是客户端状态的
那这样的话第一次加载时为什么TextBox里会有值呢
第一次显示初始的model