模板列有个label<td style="font-size: 9pt; width: 65px; height: 20px">
                        <asp:Label ID="number3" runat="server" Text='<%# Eval("3-7是否满足") %>' Width="62px"></asp:Label></td>我通过js 将label 由5000改成了4930,网格上显示,也是4930,但是
int number3 = Convert.ToInt32(((Label)DataList1.Items[i].FindControl("number3")).Text.Trim());
读出的还是5000

解决方案 »

  1.   

    TextBox客户端JS赋值 后台获取  
    要求: 客户端不能输入,但可通过js赋值,并在服务器端获取到js赋的值最近在用VS2005作项目,遇到一个这样的问题,textbox的内容总是无法获得,最后找来找去,原来是readonly搞的鬼ReadOnly
    获取或设置一个值,用于指示能否更改 TextBox 控件的内容。重要事项: 
    发生回发时,TextBox 控件(其 ReadOnly 属性设置为 true)的 Text 值被发送到服务器,但是服务器不处理只读文本框。这样可以防止恶意用户更改只读的 Text 值。在回发之间,Text 属性的值保留在视图状态中,除非经过服务器端代码修改。
    要想不让客户端更改,又想获得的话,可以用两种方法:
    1、使用input的text控件代替;
    2、不要直接使用属性设置readonly,而是通过在代码中用Attributes["readonly"] = "true"来设置。 
    3、TextBox1.Attributes["contentEditable"] = "false";
    等效于ReadOnly="true"或直接从前台设置TextBox的属性contentEditable="false"