在Dreamweaver中,以下代码可以实现输入含数字时按钮不可用。原想验证输入为合法文件名时按钮可用,但用正则表达式^[^\/\\<>\*\?\:"\|]+$ 时没效果了。高手过来帮忙看看是怎么回事,谢谢拉!<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language = "javascript">
function check(){
    re = new RegExp("^[^0-9]+$");
    addFile.disabled=(fileName.value==""||!(test.value.match(re)))
 }
</script>
</head><body>
<input id=test name="fileName" size="45" onpropertychange="check()" />
<button  name = "addFile"  disabled="desabled">保存</button>
</body>
</html>

解决方案 »

  1.   

    刚刚发现文件名除了不能包含\/:*?"<>|  ,还不能以“.”开头。
    哪位高手给个满足以上要求的可用正则表达式。
      

  2.   

    re1 = /[*\\\/:\*"<>?]{1,}/;
    re2 = /^[.]/;
    用这个去匹配 
    test.value.match(re1) 或者 test.value.match(re2)
    的则文件名错误随便写写的,试试看吧
      

  3.   

    谢谢楼上,问题已经解决。
      不过比较奇怪,为什么 re = new RegExp("^[^*\\\/:\*"<>?]+$");不行。
    用re1 = /^[^*\\\/:\*"<>?]+$/;就可以?
      而re = new RegExp("^[^.]");和re2 = /^[^.]/;就是一样的效果。转义字符不能new RegExp吗?