AutoCAD.NET 技术交流-吴锋


专注AutoCAD.net,GIS
posts - 113, comments - 500, trackbacks - 15, articles - 4
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

readonly,disabled是input的属性
ReadOnly,Enabled是asp:TextBox的属性
要求: 客户端不能输入,但可通过js赋值,并在服务器端获取到js赋的值
前台:

<asp:TextBox ID="TextBox1" runat="server" ReadOnly="true" Enabled ></asp:TextBox>
<input id="Text1" runat="server" type="text" readonly="readonly" />
<input id="Button1" type="button" value="客户端赋值" onclick="doClick()" />
<asp:Button ID="Button2" runat="server" Text="服务器端获取" OnClick="Button2_Click" />

<script language="javascript">
function $(s){return document.getElementById(s);}
function doClick()
{
    $('
<%=Text1.ClientID %>').value="wufeng";
    $('
<%=TextBox1.ClientID %>').value="wufeng";
}

</script>
后台:
    protected void Button2_Click(object sender, EventArgs e)
    
{
        Response.Write(Text1.Value 
+ " Hello<br/>");
        Response.Write(TextBox1.Text 
+ " Hello<br/>");
    }



执行服务器端回传前的客户端代码:

<input name="TextBox1" type="text" readonly="readonly" id="TextBox1" class="ClassText" />
<input name="Text1" type="text" id="Text1" readonly="readonly" />
<br />
<input id="Button1" type="button" value="客户端赋值" onclick="doClick()" />
<input type="submit" name="Button2" value="服务器端获取" id="Button2" class="ClassBtn" />


执行服务器端回传后的客户端代码:

<input name="TextBox1" type="text" readonly="readonly" id="TextBox1" class="ClassText" />
<input name="Text1" type="text" id="Text1" readonly="readonly" value="wufeng" />
<br />
<input id="Button1" type="button" value="客户端赋值" onclick="doClick()" />
<input type="submit" name="Button2" value="服务器端获取" id="Button2" class="ClassBtn" />
区别:Text1的value属性前后发生了变化,而TextBox1并不能从后台获取到。

解决:在Page_Load中设置
TextBox1.Attributes["contentEditable"= "false";//等效于ReadOnly="true"
或直接从前台设置TextBox的属性contentEditable="false"

Feedback

#1楼    回复  引用  查看    

2007-11-15 16:22 by Clark Zheng      
有意思,不知道为什么要这么做

#2楼 [楼主]   回复  引用  查看    

2007-11-19 08:17 by 无锋不起浪      
用在做部门、人员选择或其他只能通过选择来输入时。

#3楼    回复  引用    

2007-11-28 13:52 by 神仙在线 [未注册用户]
受教

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-11-15 13:28 编辑过


相关链接: