post提交,后台接收到的值不能给服务器控件赋值?
C# code
Default.aspx:
            <div id="txt" runat="server"> </div>
            $.post("Default.aspx","id:100",function(){},"json");
Default.aspx.cs:
            protected void Page_Load(object sender, EventArgs e)
           {
                   txt.InnerHtml = "1";    //可以
       
                   if (Request.Form.Count == 1)
                  {
                       txt.InnerHtml = "2";  //不可以
                       Response.End();
                  }
           }
问题在post提交如何能让服务器控件txt成功赋值?求高手解答啊
------解决方案--------------------Page_Load()里面,
一般要用到
if(!isPostBack){}
你先好好查查他的意义。
------解决方案--------------------你如果不是用Ajax的话,把Response.End();这个方法去掉,终止该页的执行了,页面的内容不能输出当然看不到赋值后的内容。
------解决方案--------------------
------解决方案--------------------。。。。Response.Write 输出
赋值 在 function里用JS
------解决方案--------------------
正确的方法
 <div id="txt"></div>
 <script src="jquery-1.7.1.min.js" type="text/javascript"></script>
 <script type="text/javascript">
   $.post('Default.aspx', { id: 100 }, function (data) {
     $("#txt").html(data)
   });
 </script>
 protected void Page_Load(object sender, EventArgs e)
 {
   if (Request.RequestType == "POST")
   {
     Response.ClearContent();
     Response.Write(Request.Form["id"]);
     Response.End();
   }
 }
------解决方案--------------------这样好像是不行的哦
可以再post的回调函数中处理
  $.post("Default.aspx","id:100",function(result)
{
  //这里处理
  //...
},"json");