Inhaltsverzeichnis
回复内容:
Heim Backend-Entwicklung PHP-Tutorial javascript - 为什么这个代码可以提交过去?

javascript - 为什么这个代码可以提交过去?

Jun 06, 2016 pm 08:14 PM
javascript php

一开始我是拿下面这个简短的代码做的实验 一开始onsubmit="return false"是这样写的 直接return false这样阻止表单提交的 这样点击按钮没有任何反应 后来我改成函数的形式阻止表单提交 就是下面的代码的样子 改成这样别人说可以阻止表单提交 但是我试的不可以啊 点击按钮并不是一点反应没有 点击后会有页面刷新而且地址栏的地址也会变后面会多一个? 跟之前直接return false一点不一样 第二段代码也是这个情况 用onsubmit="return check()" 什么都不填 直接点提交 也可以提交到数据库里面 并不能阻止提交 谁知道我的代码哪里有问题呢 为什么不能阻止提交?

<code>


    <title></title>
    <script type="text/javascript">
    function check(){
      return false;
    }
</script>


<form onsubmit="return check()">
<input type="submit" value="点击表单不会提交">
</form>

</code>
Nach dem Login kopieren
Nach dem Login kopieren

第二段

<code>


    <meta charset="utf-8">
    <title>
        
    </title>
    <style type="text/css">
    div input{display: inline-block;width: 200px;height: 20px;border:1px solid #ccc;}
    div .span1{display: inline-block;width: 90px;height: 20px;text-align: left;margin-top: 20px;}
    div #sp1,#sp2,#sp3,#sp4{display: inline-block;width: 160px;height: 20px;}
    </style>
    <script src="ajax.js"></script>
    <script type="text/javascript" src="jquery-2.2.2.min.js"></script>
    <script type="text/javascript">
        window.onload=function(){
            var oInput=document.getElementsByTagName('input');
            var oIpt1=document.getElementById('ipt1');
            var oIpt2=document.getElementById('ipt2');
            var oIpt3=document.getElementById('ipt3');
            var oIpt4=document.getElementById('ipt4');
            var oSp1=document.getElementById('sp1');
            var oSp2=document.getElementById('sp2');
            var oSp3=document.getElementById('sp3');
            var oSp4=document.getElementById('sp4');
            var re=/^[\w]{6,12}$/;
            function check(){    
                 return false;       
            };
            oIpt1.onblur=function(){
                if(oIpt1.value==''){
                    this.style.border='1px solid red';
                }else{
                    ajax("nameajax.php?id="+oIpt1.value,function(str){
                    oSp1.innerHTML=str;
                    })
                }
            }; 
            oIpt2.onblur=function(){
               if(oIpt2.value==''){
                   this.style.border='1px solid red';
                   
               }else{
                     if(oIpt2.value.match(re)){
                         oSp2.innerHTML='密码合法';
                     }else{
                         oSp2.innerHTML='密码不合法';
                     }
               }
            }
            oIpt3.onblur=function(){
                if(oIpt3.value==''){
                   this.style.border='1px solid red';
               }else{
                   if(oIpt2.value==oIpt3.value){
                       oSp3.innerHTML='密码正确';
                   }else{
                       oSp3.innerHTML='密码不一致';
                   }
               }
            };
            oIpt4.onblur=function(){
                if(oIpt4.value==''){
                    this.style.border='1px solid red';
                }else{
                    ajax("emailajax.php?id="+oIpt4.value,function(str){
                    oSp4.innerHTML=str;
                    })
                }
                
            }; 
       };
    </script>


<div>
    <form action="reg.php" onsubmit="return check()" method="post">
        <span class="span1">用 户 名:</span><input type="text" id="ipt1" name="username" autocomplete="off"><span id="sp1"></span><br>
        <span class="span1">密  码:</span><input type="password" id="ipt2" autocomplete="off"><span id="sp2"></span><br>
        <span class="span1">确认密码:</span><input type="password" id="ipt3" name="password" autocomplete="off"><span id="sp3"></span><br>
        <span class="span1">邮  箱:</span><input type="text" id="ipt4" name="email" autocomplete="off"><span id="sp4"></span><br>
        <button type="submit">提交</button>
    </form>
</div>


</code>
Nach dem Login kopieren
Nach dem Login kopieren

回复内容:

一开始我是拿下面这个简短的代码做的实验 一开始onsubmit="return false"是这样写的 直接return false这样阻止表单提交的 这样点击按钮没有任何反应 后来我改成函数的形式阻止表单提交 就是下面的代码的样子 改成这样别人说可以阻止表单提交 但是我试的不可以啊 点击按钮并不是一点反应没有 点击后会有页面刷新而且地址栏的地址也会变后面会多一个? 跟之前直接return false一点不一样 第二段代码也是这个情况 用onsubmit="return check()" 什么都不填 直接点提交 也可以提交到数据库里面 并不能阻止提交 谁知道我的代码哪里有问题呢 为什么不能阻止提交?

<code>


    <title></title>
    <script type="text/javascript">
    function check(){
      return false;
    }
</script>


<form onsubmit="return check()">
<input type="submit" value="点击表单不会提交">
</form>

</code>
Nach dem Login kopieren
Nach dem Login kopieren

第二段

<code>


    <meta charset="utf-8">
    <title>
        
    </title>
    <style type="text/css">
    div input{display: inline-block;width: 200px;height: 20px;border:1px solid #ccc;}
    div .span1{display: inline-block;width: 90px;height: 20px;text-align: left;margin-top: 20px;}
    div #sp1,#sp2,#sp3,#sp4{display: inline-block;width: 160px;height: 20px;}
    </style>
    <script src="ajax.js"></script>
    <script type="text/javascript" src="jquery-2.2.2.min.js"></script>
    <script type="text/javascript">
        window.onload=function(){
            var oInput=document.getElementsByTagName('input');
            var oIpt1=document.getElementById('ipt1');
            var oIpt2=document.getElementById('ipt2');
            var oIpt3=document.getElementById('ipt3');
            var oIpt4=document.getElementById('ipt4');
            var oSp1=document.getElementById('sp1');
            var oSp2=document.getElementById('sp2');
            var oSp3=document.getElementById('sp3');
            var oSp4=document.getElementById('sp4');
            var re=/^[\w]{6,12}$/;
            function check(){    
                 return false;       
            };
            oIpt1.onblur=function(){
                if(oIpt1.value==''){
                    this.style.border='1px solid red';
                }else{
                    ajax("nameajax.php?id="+oIpt1.value,function(str){
                    oSp1.innerHTML=str;
                    })
                }
            }; 
            oIpt2.onblur=function(){
               if(oIpt2.value==''){
                   this.style.border='1px solid red';
                   
               }else{
                     if(oIpt2.value.match(re)){
                         oSp2.innerHTML='密码合法';
                     }else{
                         oSp2.innerHTML='密码不合法';
                     }
               }
            }
            oIpt3.onblur=function(){
                if(oIpt3.value==''){
                   this.style.border='1px solid red';
               }else{
                   if(oIpt2.value==oIpt3.value){
                       oSp3.innerHTML='密码正确';
                   }else{
                       oSp3.innerHTML='密码不一致';
                   }
               }
            };
            oIpt4.onblur=function(){
                if(oIpt4.value==''){
                    this.style.border='1px solid red';
                }else{
                    ajax("emailajax.php?id="+oIpt4.value,function(str){
                    oSp4.innerHTML=str;
                    })
                }
                
            }; 
       };
    </script>


<div>
    <form action="reg.php" onsubmit="return check()" method="post">
        <span class="span1">用 户 名:</span><input type="text" id="ipt1" name="username" autocomplete="off"><span id="sp1"></span><br>
        <span class="span1">密  码:</span><input type="password" id="ipt2" autocomplete="off"><span id="sp2"></span><br>
        <span class="span1">确认密码:</span><input type="password" id="ipt3" name="password" autocomplete="off"><span id="sp3"></span><br>
        <span class="span1">邮  箱:</span><input type="text" id="ipt4" name="email" autocomplete="off"><span id="sp4"></span><br>
        <button type="submit">提交</button>
    </form>
</div>


</code>
Nach dem Login kopieren
Nach dem Login kopieren

<code>function check(){    
     return false;       
 };</code>
Nach dem Login kopieren

这一句不要放在window.onload里边,直接放在外层试试,我试过了可行

加断点跟踪一下吧~
return function中如果代码执行出问题 都是按照true来处理的~

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

See all articles