输入框为客户端控件textarea,此时获得textarea中的值方法不再是text,而是“id”.value或string question = Request.Form["QMemo"]; //QMemo为name,客户端控件一般根据name区别控件而不是id
客户端控件与服务器端控件不同,它无法捕获状态。当点击编辑时,将问答内容显示在textarea问答框中,textarea如何获得值呢?想到的方法有以下2种,分别来看下。
方法一:再添加2个问答服务器控件,分别得到问答内容,利用js将问答内容填充到textarea中。
方法二:直接在后台写js填充textarea,【document.getElementById('QMemo').value='"+sca.Question+"';】
RegisterStartupScript在</body>前输出脚本
[CS]
Code
比方法一更简便,具体方法如下。wordsTip(); 计算字符数js 封装了参数不同时调用的方法,统一全部调用,注*这里的id与name是不同的,不要混淆。具体代码如下:
[HTML]
Code
[JS]
<SCRIPT language="javascript">
<!--
function $(id)
{
return document.getElementById(id);
}
function wordsTip()
{
var QMemo = $("QMemo");
var Qtotal = $("Qtotal");
var Qused = $("Qused");
var Qremain = $("Qremain");
var AMemo = $("AMemo");
var Atotal = $("Atotal");
var Aused = $("Aused");
var Aremain = $("Aremain");
gbcount(QMemo,Qtotal,Qused,Qremain);
gbcount(AMemo,Atotal,Aused,Aremain);
}
function gbcount(message,total,used,remain)
{
var max;
max = total.value;
if (message.value.length > max)
{
message.value = message.value.substring(0,max);
used.value = max;
remain.value = 0;
alert("问答不能超过 500 个字!");
}
else
{
used.value = message.value.length;
remain.value = max - used.value;
}
}
-->
</SCRIPT>
<!--
function $(id)
{
return document.getElementById(id);
}
function wordsTip()
{
var QMemo = $("QMemo");
var Qtotal = $("Qtotal");
var Qused = $("Qused");
var Qremain = $("Qremain");
var AMemo = $("AMemo");
var Atotal = $("Atotal");
var Aused = $("Aused");
var Aremain = $("Aremain");
gbcount(QMemo,Qtotal,Qused,Qremain);
gbcount(AMemo,Atotal,Aused,Aremain);
}
function gbcount(message,total,used,remain)
{
var max;
max = total.value;
if (message.value.length > max)
{
message.value = message.value.substring(0,max);
used.value = max;
remain.value = 0;
alert("问答不能超过 500 个字!");
}
else
{
used.value = message.value.length;
remain.value = max - used.value;
}
}
-->
</SCRIPT>