關於return false

来源:https://www.cnblogs.com/m1768/archive/2018/06/06/9144315.html
-Advertisement-
Play Games

window.onload= function(){ /* 表單提交是預設行為 * preventDefault() * returnValue = false; var btnCheck = document.getElementById('btnCheck'); btnCheck.onclick ...


一、返回控制與函數結果,
語法為:return 表達式;
語句結束函數執行,返回調用函數,而且把表達式的值作為函數的結果
二、返回控制,
無函數結果,語法為:return;在大多數情況下,為事件處理函數返回false,可以防止預設的事件行為.例如,預設情況下點擊一個<a>元素,頁面會跳轉到該元素href屬性指定的頁.
Return False 就相當於終止符,Return True 就相當於執行符。
在js中return false的作用一般是用來取消預設動作的。比如你單擊一個鏈接除了觸發你的
onclick時間(如果你指定的話)以外還要觸發一個預設事件就是執行頁面的跳轉。所以如果
你想取消對象的預設動作就可以return false。
首先在js中,我們常用return false來阻止提交表單或者繼續執行下麵的代碼,通俗的來說就是阻止執行預設的行為。

function a(){

if(True)

return false;
},這是沒有任何問題的。

如果我改成這種

function Test(){

a();

b();

c();

}

即使a函數返回return false 阻止提交了,但是不影響 b()以及
c()函數的執行。在Test()函數里調用a()函數,那面裡面

return false 對於Test()函數來說,只是相當於返回值。而不能阻止Test()函數執行。

總之:return false 只在當前函數有效,不會影響其他外部函數的執行。

三:總結

retrun true; 返回正確的處理結果。

return false;分會錯誤的處理結果,終止處理。

return;把控制權返回給頁面


***轉載網路大牛,無干貨,知識點記錄罷了***

*****以下為知識點的運用******


表單的驗證(正則表達式驗證)


window.onload= function(){
/*
表單提交是預設行為
* preventDefault()
* returnValue = false;

var btnCheck = document.getElementById('btnCheck');
btnCheck.onclick = function(e){
e = e || window.event;
/*
驗證賬號
* 不能為空,
* 不能使用特殊字元(數字、字母、下劃線、橫杠),
* 必須以字母開頭,
* 長度6-20
*/
var username = document.getElementById('username').value;//6laoxie
if(!/^[a-z][a-z0-9_\-]{5,19}$/i.test(username)){
alert('輸入的用戶名不合法');

// 條件不符合不能提交表單
// e.preventDefault?e.preventDefault():returnValue=false;
return false;
}


//昵稱只能輸入中文
var nickname = document.getElementById('nickname').value;
if(!/^[\u2E80-\u9FFF]+$/.test(nickname)){
alert('昵稱只能為中文');
return false;
}

/*
電子郵件
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
*/
var email = document.getElementById('email').value;
if(!/^[a-z0-9][\w\-\.]{2,}@[\da-z\-]{2,67}(\.[a-z]{2,6})+$/i.test(email)){
alert('郵箱不合法');
return false;
}

/*
身份證
18/15
445655 19900707 2165
445655 19900707 211x
*/
var identity = document.getElementById('identity').value;
if(!/^(\d{14}|\d{17})[\dx]$/i.test(identity)){
alert('身份證不合法');
return false;
}

/*
手機號碼
11位
158 8888 8888
1 [34578]
*/
var phone = document.getElementById('phone').value;
if(!/^1[3-9]\d{9}$/i.test(phone)){
alert('手機號不合法');
return false;
}

/*
生日
1999/05/08
1999-5-8
19990508
1999-05/08 不合法

引用分組
* 正則內:\n
* 正則外:$n
分組順序:以左括弧出現的順序為分組順序
*/
var birthday = document.getElementById('birthday').value;
if(!/^\d{4}([\-\/]?)\d{1,2}\1\d{1,2}$/i.test(birthday)){
alert('生日不合法');
return false;
}
/*
密碼
長度6-20
不能包含空格
*/
var password = document.getElementById('password').value;
// if(!/^\S{6,20}$/i.test(password)){
if(!/^[^\s]{6,20}$/i.test(password)){
alert('密碼不合法');
return false;
}

var confirm_pwd = document.getElementById('confirm_pwd').value;
if(confirm_pwd != password){
alert('兩次輸入密碼不一致');
return false;
}

}
}


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 簡單選擇器 類 id 元素/標簽 * 複合(sel1,sel2)逗號隔開 層次選擇器 s1 s2;後代選擇器,空格隔開 p>c;子代選擇器;不包括孫代及以下 p+next ;相鄰選擇器 p~sub;兄弟選擇器,同一父級下併列子代 表單選擇器,表單form下元素 :input;包括 input,tex ...
  • 一款瀏覽器仿EXCEL純JS表格控制項,純國產化,支持雙擊編輯、設置公式、設置顯示小數精度、下拉框、自定義單元格、複製粘貼、不連續選定、合併單元格、隱藏列、鍵盤操作等。 ...
  • 請你設計出以下圖片里的這個樣式的表格 步驟: 2.將table里的cellspacing設置成0 外邊距是不見了,但是和我們想要完成的圖片有一定的差距,我們發現這樣做出來的圖片好像是兩條線合併到了一起一樣,實際上確實是兩條線合併到了一起的,它是將每個單元格的邊距和表格的邊距重疊到了一起才有的這個圖形 ...
  • 1.什麼是列表標簽? 列表標簽的作用:給一堆數據添加列表語義,也就是告訴搜索引擎,告訴瀏覽器這一堆數據是一個整體 2.HTML列表標簽的分類 2.1無序列表(企業開發中用到最多)(unordered list) 2.2有序列表 (企業開發中用的最少) (ordered list) 2.3定義列表 ( ...
  • github源碼地址 https://github.com/ghshuo/webpack demo webpack介紹 webpack 是一個現代 JavaScript 應用程式的靜態模塊打包器(module bundler)。當 webpack 處理應用程式時,它會遞歸地構建一個依賴關係圖(dep ...
  • 單選按鈕: 加checked=checked屬性 覆選框 加checked=checked屬性 select下拉框 加selected=selected屬性 date日期: value='2018-06-06' 普通文本框: value="你要預設展示的值" textarea: 沒有value屬性, ...
  • 實驗目的:按照一定規律生成類地行星地表地形區塊,並用合理的方式將地形塊顯示出來 涉及知識:Babylon.js引擎應用、著色器編程、正態分佈、數據處理、canvas像素操作 github地址:https://github.com/ljzc002/ljzc002.github.io/tree/mast ...
  • 2.左側盒子: 左浮動; 右側盒子: 左浮動,再通過calc計算寬度 3.左側盒子: float: left; 右側盒子: margin-left 理解: 浮動會使得元素脫離文檔流,後面元素進行佈局時,前面的浮動元素就像不存在一樣 4.包含左右盒子的大盒子: display: table; 寬度為1 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...