2013-08-02 44 views
1

我在textarea字段上设置了maxlength。在用户超出textarea最大长度的情况下,如何防止maxlength阻止提交?如何防止textarea maxlength阻塞提交

+0

您可以在客户端网站上使用JavaScript实现您喜欢的任何合理性检查。 – arkascha

+0

这是不是很清楚你的意思:我想你的意思是说“如果...阻止提交...”而不是“......阻止它......”,因为textarea的maxlength没有效果,除非你有一些你没有告诉我们的客户端验证。 – UweB

+0

在提交时,您可以检查输入字符串的长度,并在其长度超过您的预设限制时返回false以停止提交操作 –

回答

2

你可以用Javascript/jQuery来做到这一点。检查你的文本区域的长度,如果它更多是你想要的(文本长度)给出警报,并且不允许提交表单。

<script> 
    function formSubmit(){ 
     var count = $("#your_textarea").val().length; 
     if(count >= MAX_LENGHT) { 
      alert("Max length reached for the text area"); 
      return false; 
     } 
    } 
</script> 

<textarea id="your_textarea"></textarea> 
<input type="button" onclick="formSubmit()" value="Submit form"> 

note: codes are not tested. 
0

希望下面的代码可以帮助你。

<html> 
<head> 

<script> 
function test() 
{ 
    var txtval_length=document.getElementById("txt").value.length; 
    if(txtval_length>30) // here 30 is temporary purpose you can set as per your requirement. 
    { 
     return false; // do not allow to submit 
    } 
    else 
    { 
     return true; // submit form 
    } 
} 
</script> 
</head> 
<body> 
<form action="test1.html" method="post" onsubmit="return test();"> 
    <textarea id="txt"></textarea> 
    <input type="submit" value="Submit"/> 
</form> 
</body> 
</html> 

在上面的例子中,如果textarea的字符的长度是小于30则允许提交表单否则形成不会提交。您可以根据您的要求更改条件。