下面是统计留言板中已输入字符和剩余可输入字符的字数的函数。但是不加<form>标签可用,一旦加上<form>标签就不可以用了,出错,达不到想要的结果。这是为什么啊?什么会出现这种情况?该怎么改啊
这是代码如下:<script>
var total=10;
var sy;function show(obj)
{
if (test.value.length > total) {
test.value = test.value.substring(0,total);
alert("留言不能超过 10 个字!");
}
else {
document.getElementById('text1').innerHTML="你已经输入<font color='red'>"+obj.value.length+"</font>个字";
sy=total-obj.value.length;document.getElementById('text2').innerHTML="还剩余<font color='red'>"+sy+"</font>个字";}}
</script>
<form><input type="text" onkeyup="show(this)" id="test" name="test" value="" />
<div id="text1"></div>
<div id="text2"></div></form>
大侠,你运行一下就知道了,去掉<form>标签就行。
这是代码如下:<script>
var total=10;
var sy;function show(obj)
{
if (test.value.length > total) {
test.value = test.value.substring(0,total);
alert("留言不能超过 10 个字!");
}
else {
document.getElementById('text1').innerHTML="你已经输入<font color='red'>"+obj.value.length+"</font>个字";
sy=total-obj.value.length;document.getElementById('text2').innerHTML="还剩余<font color='red'>"+sy+"</font>个字";}}
</script>
<form><input type="text" onkeyup="show(this)" id="test" name="test" value="" />
<div id="text1"></div>
<div id="text2"></div></form>
大侠,你运行一下就知道了,去掉<form>标签就行。
var total=10;
var sy; function show(obj)
{
var test = document.getElementById('test');
if (test.value.length > total) {
test.value = test.value.substring(0,total);
alert("留言不能超过 10 个字!");
}
else { document.getElementById('text1').innerHTML="你已经输入 <font color='red'>"+obj.value.length+" </font>个字";
sy=total-obj.value.length; document.getElementById('text2').innerHTML="还剩余 <font color='red'>"+sy+" </font>个字";} }
</script>
<form>
<input type="text" onkeyup="show(this)" id="test" name="test" value="" />
<div id="text1"> </div>
<div id="text2"> </div>
</form>
var total=10;
var sy; function show(obj)
{
if (document.forms[0].test.value.length > total) {
document.forms[0].test.value = document.forms[0].test.value.substring(0,total);
alert("留言不能超过 10 个字!");
}
else {
document.getElementById('text1').innerHTML="你已经输入 <font color='red'>"+obj.value.length+" </font>个字";
sy=total-obj.value.length;
document.getElementById('text2').innerHTML="还剩余 <font color='red'>"+sy+" </font>个字";
}
}
</script>
<form> <input type="text" onkeyup="show(this)" id="test" name="test" value="" />
<div id="text1"> </div>
<div id="text2"> </div> </form>
怎么反倒FF可以直接点,IE却不行了啊,难道我记反了啊?
<html>
<head><title>tt</title></head>
<script>
var total=10;
var sy; function show(obj)
{
if (obj.value.length > total) {
obj.value = obj.value.substring(0,total);
alert("留言不能超过 10 个字!");
}
else {
document.getElementById('text1').innerHTML="你已经输入 <font color='red'>"+obj.value.length+" </font>个字";
sy=total-obj.value.length;
document.getElementById('text2').innerHTML="还剩余 <font color='red'>"+sy+" </font>个字";} }
</script>
<form> <input type="text" onkeyup="show(this)" id="test" name="test" value="" />
<div id="text1"> </div>
<div id="text2"> </div> </form> </html>