首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

前台动态创建的textbox,后台丢失值解决方法

2012-01-06 
前台动态创建的textbox,后台丢失值前台创建代码如下:vartbdocument.getElementById( table1 )varstrd

前台动态创建的textbox,后台丢失值
前台创建代码如下:
var   tb   =   document.getElementById( "table1 ");
var   str   =   document.getElementById( "hidden1 ").value;
//拆分
var   arr_str   =   str.split( '; ');
for   (var   i   =   0;   i   <   arr_str.length;   i++)
{
        var   row   =   tb.insertRow(tb.rows.length);
        var   cell=   row.insertCell(0);
        cell.innerHTML   =   " <input   type= 'hidden '   id= 'hidden "   +   i   +   " '   value= ' "   +   arr_str[i]   +   " '/> "   +   arr_str[i];
        var   cellTxt   =   row.insertCell(1);
        cellTxt.innerHTML   =   " <input   type= 'text '   size= '10 '   id= 'txtbox "   +   i   +   " '   /> XXX ";
}

后台获取代码如下:
for   (int   i   =   0;   i   <   table1.Rows.Count;   i++)
{
        HtmlInputHidden   hidden   =   (HtmlInputHidden)table1.Rows[i].Cells[0].Controls[0];
        string   str   +=   hidden.Value   +   ": ";
        TextBox   txtbox   =   (TextBox)table1.Rows[i].Cells[1].Controls[0];
}
明明输入了值,后台的txtbox也能获得,但内容就是为空。为什么?同一个table里的hidden,就没有问题。

[解决办法]
可以用ajax,也可以在画面上table以外的地方放一个hidden,点提交的时候先在前台把textbox的值存在这个hidden里。

热点排行