成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

生成 JSON 元數據對象的典型方法

開發 前端
不需要把服務器端代碼包含在 JavaScript 中,而保存的服務器端元數據和消息中的更改也不會影響客戶端腳本。這種方法太棒了,是不是?好的,那就是使用基于JSON 對象時要做的。

如果只需在條件語句和警報中引用一個 JavaScript 變量而不是服務器端代碼,您感覺怎么樣?這段代碼看上去是不是好多了?它沒有在 JavaScript 中混入服務器代碼。如果服務器端更改存儲元數據的方法,則無需再重寫客戶機腳本。這會使 JSON 對象的日子更輕松些。#t#

您將使用一個 JavaScript 對象把我們的驗證數據和消息分組到一個層級中。然后就像訪問層級的 JavaScript 對象一樣訪問這些消息。就是這樣,您已經做到了!當此 JSON 元數據對象就緒后,先前的 JavaScript 代碼片段將類似。

  1. if(cc < vehicleValidationsMetadata.CC.minCC ||   
  2.                      cc > vehicleValidationsMetadata.CC.maxCC) {  
  3.      alert(vehicleValidationsMetadata.CC.RangeMessage);  
  4.      } 

現在,問題是誰來準備 JSON 元數據對象?嗯,只有服務器能做這項工作。服務器必須生成這個 JSON 對象,并將其提供給客戶機(瀏覽器)。一些 Java API 可以幫助您準備此類(事實上是任意一類)JSON 對象。請參閱 參考資料 來查看那些 API。

生成 JSON 元數據對象的典型方法為:

  1. var vehicleValidationsMetadata = {  
  2.      "BrandName":{  
  3.                    "CanContainDigits":{false},  
  4.                "MaxWords":{2},  
  5.              "FormatMessage":{"Brand Name cannot contain digits."},   
  6.            "WordLimitMessage":{"Brand Name cannot contain more than two words"}  
  7.          }, "RegistrationNumber":{  
  8.              "CanContainAlphabets":{false},  
  9.               "CanContainDigits":{"true"},  
  10.                 "FormatMessage":{"Registration Number can contain only digits."}  
  11.      },  
  12.  "CC":{  
  13.               "minCC":{50},  
  14.                  "maxCC":{5000},  
  15.                 "FormatMessage":  
  16.              {"CC can only be numeric"},   
  17.                  "RangeMessage":{"CC can be within range of 50 and 5000"}  
  18.      }  
  19.  } 

為實體及其驗證消息準備一個層級 Java 對象。 對這些實體及其驗證消息調用 toString()。這些實體及其驗證消息最有可能把一個 JSON 形式的字符串提供給您。
將該字符串另存到一個請求范圍內。 在 JSP 中,獲取該字符串,并將其指派到 JavaScript 變量值的大括號內。

最終的車輛元數據對象。

  1. function validateVehicleData() {  
  2.       var brandName = //get brand name from form field  
  3.    var registrationNumber = //get Registration Number from form field.  
  4.         var CC = //get CC from form field  
  5.    var brandNamebrandNameTokens = brandName.split(' ');  
  6.         if(brandNameTokens.length > vehicleValidationsMetadata.BrandName.MaxWords) {  
  7.             alert(vehicleValidationMessages.BrandName.WordLimitMessage);  
  8.        }  
  9.   .  
  10.   .  
  11.   .  
  12.   if((!vehicleValidationsMetadata.RegistrationNumber.CanContainAlphabets) &&   
  13.                      isNaN(parseInt(registrationNumber))) {  
  14.  alert(vehicleValidationMessages.RegistrationNumber.FormatMessage);  
  15.  }  
  16.   var ccNum = parseInt(CC);  
  17.   if(ccNum < vehicleValidationMessages.CC.minCC ||   
  18.                      ccNum > vehicleValidationMessages.CC.maxCC) {  
  19.                alert(vehicleValidationMessages.CC.RangeMessage);  
  20.   }  

服務器必須生成整個字符串,第一行和最后一行除外,因為當前的用戶語言環境可能要求使用這些消息(并且只有服務器端代碼能完成這項工作)。在這里,需要注意的一點是此元數據對象僅用于驗證車輛。更理想的情況是將 JSON 對象對象封裝到 person 元數據對象中。

那樣,您就不需要再創建另一個 JSON 對象,而只需將該元數據對象包含到 person 元數據對象中。在將此元數據對象準備好后,您可以使用該對象中的元數據和消息來驗證數據輸入和顯示消息。現在,驗證車輛輸入信息的 JavaScript 函數看上去就會跟 清單 4 一樣。

責任編輯:chenqingxiang 來源: CSDN
相關推薦

2010-01-08 14:36:01

生成 JSON

2010-01-08 13:48:51

JSON 形式

2010-01-07 16:55:06

JSON字符串

2010-03-29 14:36:06

Oracle DICO

2010-02-22 11:02:06

WCF元數據

2011-03-04 14:58:40

jqueryJSON

2010-07-02 14:52:21

SQL Server元

2015-02-05 13:15:37

2010-09-26 16:31:07

JVM參數配置

2010-07-06 10:07:10

jQueryJSON

2014-09-18 16:46:51

大數據應用

2021-09-01 10:37:25

鴻蒙HarmonyOS應用

2021-11-11 12:45:36

PythonCSVJSON

2010-01-06 13:32:27

JSON數據

2019-02-11 08:48:07

XMLJSON前端

2023-10-27 08:33:40

Go語言元編程

2009-06-16 11:13:38

Javadoc生成方法Javadoc

2013-03-27 13:34:49

數據清洗

2018-05-29 09:38:40

大數據金融行業銀行業

2021-09-01 14:36:14

鴻蒙HarmonyOS應用
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九九99精品 | 91中文在线观看 | 国产目拍亚洲精品99久久精品 | 草草精品| 中文字幕1区 | 日韩精品一区二区三区中文字幕 | 中文字幕视频在线看5 | 国产成人免费视频网站视频社区 | 亚洲一区二区在线播放 | 国产成人综合在线 | 久久亚洲精品国产精品紫薇 | 国产91亚洲精品一区二区三区 | 伦理二区 | 91爱啪啪 | 成人av网站在线观看 | 国产高清久久 | 国产视频三级 | 亚洲风情在线观看 | 日日欧美 | 成人免费小视频 | 国产精品久久久久久久久久久免费看 | 97视频免费| 亚洲乱码一区二区 | 91精品久久久久久久久久 | 午夜免费网站 | 天天天操| 久久久久久高潮国产精品视 | 国产日韩欧美一区二区在线播放 | 国产成人精品一区二区三区四区 | 国产一区二区三区四区hd | 最新中文字幕在线 | 91精品国产综合久久久久久首页 | 91五月天| 欧美一级一区 | 欧美三区 | 射久久| 欧洲性生活视频 | 久久精品亚洲精品 | 黄色成人国产 | 久久久久久高潮国产精品视 | 国产乱码久久久久久 |