表单提交到php处理,前台用js做初步认定,但是如果使用FF,可以直接取消运行js,轻松跳过,怎样才能:不运行js,则表单无法提交呢?好像听说将提交的位置用js给出来,不是很明白,有没有高人帮帮忙?

解决方案 »

  1.   

    <form name=frm>
    <input type=subnit value=提交 onclick="javascript:document.frm.action='xxx.php'">
    </form>
      

  2.   

    <script>
    var str = "r[0]=r[1]+r[2]-r[3],r[4]=r[0]*r[6]-r[7],";
    var arr = str.split(/\=|\+|\-|\,|\*|\//);
    alert(arr);
    </script>
      

  3.   


    <form id="form1" name="form1" onsubmit="return beforeSubmit();"> 
    <input type="submit" value="提交" /> 
    </form>function beforeSubmit(){
        if(符合条件){
            var form1 = document.getElementById("form1");
            form1.action = "1.php";
            form1.submit();
        }
        return false;

      

  4.   

    用普通按钮(button)代替提交按钮(submit)
    在普通按钮上加事件:  //some code   //js执行完成后,设置form的action,然后提交
       var form1 = document.getElementById("form1");
       form1.action = "1.php";
       form1.submit();另,你的js在ff下没有执行直接提交表单是应为你的的js在ff下没有兼容,某些地方出错了,导致最后那个false没有return回来,所以form直接提交了。检查你的js代码吧
      

  5.   

    除了客户端验证之外,在服务端也必须验证。因为客户端不仅可以禁用 JavaScript,而且可以改写页面上的所有的东西,这在 Firebug 下很容易能做到。
      

  6.   

    能用FF禁止验证脚本 那么你怎么修改脚本也都会被饶过去
    所以前台JS被禁止而无验证直接提交 是无所谓的 这个是防君子不防小人
    后台才是正真的把关