从Javascript函数设置跨度文本
Set span text from Javascript function
编辑:确保在添加到Javascript函数调用的控件周围添加"。
我正在使用Asp.net文本框控件并在span标记中设置字符倒计时。当我将其设置为引用特定控件的jquery时,它工作得很好。然而,考虑到我将在整个项目中多次使用它,我想将其作为一个单独的javascript函数。我需要传递文本框控件(获取当前计数),maxcharacters(允许)和span控件(显示剩余字符)。
下面是我到目前为止的代码,除了最后两行之外,它可以正常工作。我得到一个未定义的变量错误,"0x800a138f - JavaScript运行时错误:无法设置未定义或空引用的属性'innerHTML'"。我试过使用val, value, innertext等。问题似乎是,它没有拿起我正在传递的span控件。
HTML <div class="input-group">
<asp:TextBox runat="server" ID="textbox1" CssClass="form-control" placeholder="Class Description" MaxLength="75"
onkeyup="getCount(this,75,'textcharacters');"></asp:TextBox>
<span class="input-group-addon" id="textcharacters"></span>
</div>
Javascript function getCount(evt, length, char) {
var lengthCount = evt.value.length;
if (lengthCount > length) {
this.value = this.value.substring(0, length);
var charactersLeft = length - lengthCount + 1;
}
else {
var charactersLeft = length - lengthCount;
}
var outputElement = document.getElementById(char);
outputElement.innerHTML = charactersLeft;
}
如有任何想法或建议,我将不胜感激。TIA 我不太了解asp.net,但这里有一个完整的客户端版本,您正在尝试完成:
<!DOCTYPE html>
<html>
<body>
<textarea id="countdown" oninput="charcalculate('countdown', 'chartext', 75);"></textarea>
<br/>
<span id="chartext">750</span> characters left
</body>
<script>
//Make sure to put this script under the tags, or else, the javascript doesn't know them.
function charcalculate(textarea, chartext, limit) {
// get the textarea DOM object get the length of the value of the text area
var textcount = parseInt(document.getElementById('countdown').value.length);
//if more than the limit, delete the written character (copy and paste sort of bypasses this)
if (textcount > limit) {
document.getElementById('countdown').value = document.getElementById('countdown').value.substring(0, textcount - 1);
return;
}
// get the span tag DOM object's value/HTML and subtract the limit by the length of the textarea
document.getElementById('chartext').innerHTML = limit - textcount;
}
</script>
</html>
参见上面的编辑说明
添加prostophe's来控制被添加到Javascript函数调用
<div class="input-group">
<asp:TextBox runat="server" ID="textbox1" CssClass="form-control" placeholder="Class Description" MaxLength="75"
onkeyup="getCount(this,75,'textcharacters');"></asp:TextBox>
<span class="input-group-addon" id="textcharacters"></span>
</div>
相关文章:
- Javascript:是否可以在2D画布中为不同的文本设置不同的字体大小
- 我可以为高图表中的所有文本设置默认颜色吗?
- 如何将文本设置为画布圆形
- 将文本设置为google+共享按钮
- 在网格加载数据后,将行列文本设置为粗体
- 在WordPress中使用标题文本设置花哨的框标题
- 使用 JavaScript 将标签文本设置为跨度宽度
- 将文本设置为“来自 JavaScript 的输入”
- 如何使用 ExtendScript 在 InDesign 中以编程方式将文本设置为“小型大写字母”
- 如何从javascript var或输入类型文本设置php mysql
- 将段落文本设置为 JSON 数据结果
- AngularJS通过文本设置选定的选项
- 读取 HTML 并将文本设置为变量
- 如何使用jquery或javascript使用选定的下拉选项文本设置innerhtml
- 仅为附加文本设置字体大小
- jQuery-使用嵌套在optgroups中的值或文本设置选择框的选定选项
- 用图像和文本设置画布的背景颜色
- 单击文本并将文本设置/定义为javascript变量的值
- 如何将文本设置为货币格式
- 当使用 jQuery 从下拉列表中选择一个值时,将输入文本设置为只读