C# Word倒计时无法在asp.net中工作

C# Word倒计时无法在asp.net中工作,c#,javascript,asp.net,C#,Javascript,Asp.net,我在网上的一些参考资料中找到了一种用于字数计算的脚本语言。脚本是这样的 <script language = "Javascript"> function tbLimit() { var tbObj = event.srcElement; if (tbObj.value.length == tbObj.maxLength * 1) return false; } function tbCount(visCnt) { var tbObj = event.srcE

我在网上的一些参考资料中找到了一种用于字数计算的脚本语言。脚本是这样的

<script language = "Javascript">
function tbLimit() {
    var tbObj = event.srcElement;
    if (tbObj.value.length == tbObj.maxLength * 1) return false;
}
function tbCount(visCnt) {
    var tbObj = event.srcElement;
    if (tbObj.value.length > tbObj.maxLength * 1) tbObj.value = tbObj.value.substring(0, tbObj.maxLength * 1);
    if (visCnt) visCnt.innerText = tbObj.maxLength - tbObj.value.length;
}
</script>
You have <asp:Label ID="lblCounts" runat="server" Text="500"></asp:Label> &nbsp;characters left.
我还添加了一个标签,它将像这样运行单词计数

<script language = "Javascript">
function tbLimit() {
    var tbObj = event.srcElement;
    if (tbObj.value.length == tbObj.maxLength * 1) return false;
}
function tbCount(visCnt) {
    var tbObj = event.srcElement;
    if (tbObj.value.length > tbObj.maxLength * 1) tbObj.value = tbObj.value.substring(0, tbObj.maxLength * 1);
    if (visCnt) visCnt.innerText = tbObj.maxLength - tbObj.value.length;
}
</script>
You have <asp:Label ID="lblCounts" runat="server" Text="500"></asp:Label> &nbsp;characters left.
您还剩下字符。

有人能看到什么地方出了问题,阻止它运行吗

非常接近,您需要通过在
tbCount
的参数中添加引号来告诉Javascript ClientID是一个字符串:

tbOR.Attributes.Add("onkeyup", "return tbCount('" + lblCounts.ClientID + "');");
然后在Javascript中,使用
document.GetElementById
查找它:

function tbCount(visCnt) {
    visCntInput = document.getElementById(visCnt);
    var tbObj = event.srcElement;
    if (tbObj.value.length > tbObj.maxLength * 1) tbObj.value = tbObj.value.substring(0, tbObj.maxLength * 1);
    if (visCntInput) visCntInput.innerText = tbObj.maxLength - tbObj.value.length;
}

目前,您假设
ClientID
返回对DOM对象的引用,实际上它返回一个客户端
ID
,以便您可以定位该对象。

尝试记录
visCntInput
变量,并查看是否已填充该变量。你在用IE吗?因为
event.srcelelement
是IE-only。记住要遵循标准,请使用