我已经尝试了多种javascript和jquery方法来限制行,但大多数都有一个错误,或者有复制/粘贴等问题。请让我知道它应该如何为客户端..主要是通过复制/粘贴修补,如果你不按Enter键限制额外的行,但继续写等等......
另外,那是我的服务器端,目前只检查,所以请告诉我是否可以改进它?
$lines = array_slice(explode("\n", trim( $_POST['description'])), 0, 10); // max 10 lines
foreach ($lines as $key => $value)
{
$lines[$key] = substr(trim($value), 0, 100); // max 100 chars
}
$insert['teams_descr'] = implode("\n", $lines);
$this->db->update( 'teams', $insert, array( 'teams_id' => $this->user->leader_team_id() ) );
答案 0 :(得分:0)
你可以试试这个
<textarea id="splitLines" rows="10" cols="100" onchange="ValidateLines(this.value)"></textarea>
<script>
function ValidateLines(val) {
var lines = val.split("\n");
for (var i = 0; i < lines.length; i++) {
if (lines[i].length <= 100) continue;
var j = 0; space = 100;
while (j++ <= 100) {
if (lines[i].charAt(j) === " ") space = j;
}
lines[i + 1] = lines[i].substring(space + 1) + (lines[i + 1] || "");
lines[i] = lines[i].substring(0, space);
}
document.getElementById("splitLines").value = lines.slice(0, 10).join("\n");
}
</script>
复制粘贴适用于此...但它正在处理更改事件......