form中的默认值更改就alert (续) 放你个<input type=hidden>记录所有的默认值,提交之前进行比较 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个办法可以是可以,但是因为我要改的form太多了,想找一个通用一些的。详细的可以看http://community.csdn.net/Expert/topic/3238/3238842.xml?temp=.2392542这些对于text类型的form是可以用的。但…… 那就onLoad的时候把状态值存数组里提交前作比较 checkbox的也解决了,用delfaultSelected,但是select 表单呢?怎么看他的默认option改变没变 var obj=document.myform.fif (obj.options[obj.selectedIndex].defaultSelected == true) alert("Option"+obj.selectedIndex+"是默认选项") <form name="myform" method="post" action="a.php"><input type=text name="a" value="5" ><input type=radio name="b" value="6"><input type=radio name="b" value="6" checked><input type=checkbox name="c" value="4" checked><select name="d"><option value="1">1</option><option value="2" selected>2</option><option value="3">3</option></select><select name="f"><option value="1">1</option><option value="2" selected>2</option><option value="3">3</option></select></form><input type="button" onclick="isChangeForm(myform)" value="Check"/><script>function isChangeForm(f){ var e = f.elements; var isChange = false; for(var i=0; i<e.length; i++) { // alert(e[i].type); if (e[i].type=="text" && e[i].defaultValue!=e[i].value) { isChange = true; break; } if (e[i].type=="checkbox" && e[i].defaultChecked!=e[i].checked) { isChange = true; break; } if (e[i].type=="radio" && e[i].defaultChecked!=e[i].checked) { isChange = true; break; } if (e[i].type=="select-one" && !(e[i].options[e[i].selectedIndex].defaultSelected)) { //isChange=!(e[i].options[e[i].selectedIndex].defaultSelected); isChange = true; break; } if (e[i].type=="select-multiple") { for(var xx=0;xx<e[i].options.length;xx++) { // alert(e[i].options[xx].defaultSelected); //alert(e[i].options[xx].selected); if(e[i].options[xx].defaultSelected!=e[i].options[xx].selected) { isChange = true; break;} } } } if(!isChange) { alert("没改!"); return false; }}</script> 日历插件里面的时间绑定问题 这个弹出框是怎么做的呢?? 高手请帮忙 IE6 7 8 都通过 就是火狐下失效 2行JS代码 懂的来看看 看不懂代码求帮助 JAVASCRIPT这种情况是怎么回事?是不是有变量有冲突? 小菜我问下,如何判断字符串以数字开头 怎么判断一个字符串是否含有某个子字符串呢? 如何使一张图片点击一下变成另一张,再点击一下变回这一张??? netscape 不响应onclick事件吗? 急问,javascript中的onclick函数在mozilla浏览器中不能执行。 怎么实现动态从数据库中读取数据并不断更新的导航栏?
这些对于text类型的form是可以用的。但……
但是select 表单呢?怎么看他的默认option改变没变
if (obj.options[obj.selectedIndex].defaultSelected == true) alert("Option"+obj.selectedIndex+"是默认选项")
<input type=text name="a" value="5" >
<input type=radio name="b" value="6">
<input type=radio name="b" value="6" checked>
<input type=checkbox name="c" value="4" checked><select name="d">
<option value="1">1</option>
<option value="2" selected>2</option>
<option value="3">3</option>
</select>
<select name="f">
<option value="1">1</option>
<option value="2" selected>2</option>
<option value="3">3</option>
</select>
</form><input type="button" onclick="isChangeForm(myform)" value="Check"/><script>
function isChangeForm(f){
var e = f.elements;
var isChange = false;
for(var i=0; i<e.length; i++)
{
// alert(e[i].type);
if (e[i].type=="text" && e[i].defaultValue!=e[i].value)
{
isChange = true;
break;
}
if (e[i].type=="checkbox" && e[i].defaultChecked!=e[i].checked)
{
isChange = true;
break;
}
if (e[i].type=="radio" && e[i].defaultChecked!=e[i].checked)
{
isChange = true;
break;
}
if (e[i].type=="select-one" && !(e[i].options[e[i].selectedIndex].defaultSelected))
{
//isChange=!(e[i].options[e[i].selectedIndex].defaultSelected);
isChange = true;
break;
}
if (e[i].type=="select-multiple")
{ for(var xx=0;xx<e[i].options.length;xx++)
{
// alert(e[i].options[xx].defaultSelected);
//alert(e[i].options[xx].selected);
if(e[i].options[xx].defaultSelected!=e[i].options[xx].selected)
{ isChange = true;
break;}
}
}
} if(!isChange)
{ alert("没改!");
return false;
}
}</script>