我如何读取特定行中的总字符数?
我希望用户只用5行输入75个字符在textarea中,意味着用户只能使用5个输入或返回,5个输入或返回后他将无法输入更多的字符。所以在一行中有15个字符。
我可以使用以下代码获取当前行号,如何计算该行onkeypress中的总字符数?
function getLineNumber()
{
var t = $("#textareaId")[0];
console.log(t.value.substr(0, t.selectionStart).split("\n").length);
}
答案 0 :(得分:3)
以下是jsFiddle,以下是代码:
function getLineNumber()
{
var t = $("#textareaId")[0];
var lineIndex = t.value.substr(0, t.selectionStart).split("\n").length-1;
//alert the characters in line
alert(t.value.substr(0, t.selectionStart).split("\n")[lineIndex].length);
}
$("#textareaId").keypress(function() {
getLineNumber();
});
另一种方法是更新jsfiddle1
function getLineNumber()
{
var t = $("#textareaId").val().split("\n");
var lineIndex = (t.length)-1
alert(t[lineIndex].length);
}
$("#textareaId").keypress(function() {
getLineNumber();
});
希望这有帮助。
答案 1 :(得分:0)
也许你可以添加一点css来解决你的问题?
选项a:没有滚动条,文本区域扩展:
textarea {
overflow:auto;
}
选项b:没有滚动条,文本区域保持不变:
textarea {
overflow:hidden;
}
这有帮助吗?