这个主题有一些相似的主题,但是当前的要求更加具体,我无法将它与现有的解决方案结合起来,所以请求社区帮助我。我需要建立textarea的JS验证为规则:Textarea使用Javascript限制字符和线条
4行的最大
的128个字符最大
剩余字符计数器textarea的下显示32个字符
等我已经找到了怎么办...
请问我可以如何执行此操作?
p.s.应该明确的JavaScript解决方案
这个主题有一些相似的主题,但是当前的要求更加具体,我无法将它与现有的解决方案结合起来,所以请求社区帮助我。我需要建立textarea的JS验证为规则:Textarea使用Javascript限制字符和线条
4行的最大
的128个字符最大
剩余字符计数器textarea的下显示32个字符
等我已经找到了怎么办...
请问我可以如何执行此操作?
p.s.应该明确的JavaScript解决方案
这是你的代码应该怎么样子(也JSFiddle见):
var rows = 4;
var cols = 32;
var body = document.body;
var ta = createElem(body, 'textarea');
var div = createElem(body, 'div');
ta.rows = rows;
ta.cols = cols;
ta.addEventListener('keyup',() => {
var lines = ta.value.split('\n');
lines = lines
.slice(0, Math.min(lines.length, rows))
.map(line => line.substring(0, cols));
ta.value = lines.join('\n');
displayRemaining(cols * rows - ta.value.length + rows - 1);
});
displayRemaining(cols * rows);
function createElem(a, b){
b = document.createElement(b);
a.appendChild(b);
return b;
}
function displayRemaining(a){
div.innerHTML = 'Characters remaining: ' + a + '.';
}
谢谢,它几乎工作的解决方案,只需要更新displayRemaining函数来显示剩余的行字符,行和总数你已经做的字符。 –
@OlegSapishchuk。我希望你能自己做。 – 2016-09-26 20:21:33
@ SoftwareEnfineer171肯定:)我已经开始了,将需要移植和改进,但你的主要想法是我的核心。再次感谢你。 –
你可以看一下materializecss的多行文本为出发点的http:// materializecss。 com/forms.html – eavidan
@eavidan谢谢你的链接,但我不得不注意,它应该是清楚的JavaScript解决方案 –