如何设置填写表格动态文本字段,输入指定数量的字符不少于此,例如12。
maxlength =“12”将数字限制为12但更高。
以下脚本代码,我将以这种方式保护。这可以直接在PHP而不是在JavaScript中完成 - 因为你可以关闭它吗?
<script src="js/addInput.js" language="Javascript" type="text/javascript"></script>
<div id="dynamicInput">Serial No<b><font color="#FF0000">*</font></b>
1: <input type="text" name="myInputs[]" maxlength="12" > np 6544/2014-01
</div>
<input type="button" value="Add number" onClick="addInput('dynamicInput');">
kod pliku js / addInput.js
var counter = 1;
var limit = 20;
function addInput(divName){
if (counter == limit) {
alert("Add only 20 numbers");
}
else {
var newdiv = document.createElement('div');
newdiv.innerHTML = "Serial number<font color='#FF0000'>*</font> " + (counter + 1) + ": <input type='text' maxlength='12' name='myInputs[]'>";
document.getElementById(divName).appendChild(newdiv);
counter++;
}
}
答案 0 :(得分:0)
在输入中使用maxlength
<input type="text" name="usrname" maxlength="20">
答案 1 :(得分:0)
要将输入从12限制为12,请尝试此
<input type='text' pattern=".{12,12}" maxlength="12" name='myInputs[]'/>
关于限制,您应该在php中控制它,例如:
if( count($_POST['myInputs']) > 20){
//error
}
答案 2 :(得分:0)
我认为在浏览器中避免使用JS是一个坏主意,因为有人可以将其关闭:
所以在浏览器中试试这个:
<script>
var input = document.getElementById( 'myFormId' )['exactInput']
, lastCorrectValue = ''
, neededSize = 12
input.addEventListener( 'change', function ( e )
{
if ( e.target.value.length !== neededSize )
{
e.target.value = lastCorrectValue
}
else
{
lastCorrectValue = e.target.value
}
} )
</script>
</body>
当输入失去焦点时,如果新数据的长度错误,则会丢弃更改。
旧浏览器中的'change'
事件可能有问题,因此您也可以使用相同的'blur'
事件。