最近專案中一直在用 Jquery validation 做校驗,結合bootstrap 和 jquery form 感覺效果不錯。但remote驗證的快取問題讓我頭痛了很久,幾乎就像放棄這款外掛了。
舉例說明:
現有學校,年級,班級實體
在同一學校下不能有相同的年級,在同一年級下不能有相同的班級
以同一學校下不能有相同年級為例,在驗證的時候用remote方式:
JS
"gradeId" : {
required : true,
min : 0,
remote: {
Manager -checkGrade.action",
type: "post",
dataType: "json",
data: {
'gradeId' : function() {
return $("#gradeId ").val();
},
'schoolId' : function() {
return $("#schoolId").val();
}
}
}
}
HTML
程式碼:
現在有測試學校1、測試學校2,兩所學校,其中測試學校1下有小學一年級、小學二年級兩個年級
理論上,在新增年級的時候,如果學校選擇測試學校1,那麼選擇小學一年級、小學二年級時remote驗證會報錯「該年級已經存在」


這還不是最難讓人接受的,更嚴重的問題時如果先選擇了測試學校2、和小學一年級,remote驗證通過,此時再選擇測試學校1,remote驗證依然通過,如此一來同一學校下不能有相同年級的驗證就等於失敗了
於是進行了各種查詢解決方法
有種說法是,在remote中加入"cache: false",但是實測並沒有解決問題
嘗試過在學校下拉框上綁定onchange事件清空gradeId的值,依然無法解決問題
查閱了validation的api,發現.valid() 方法可以主動觸發驗證,但是由於緩存問題,remote依然沒有重新驗證

$("#schoolId") .change(function(){
$("#gradeId").removeData("previousValue");
成功解決問題

Golang是一门高性能、现代化的编程语言,在日常开发中经常涉及到字符串的处理。其中,验证输入是否为大写字母是一个常见的需求。本文将介绍在Golang中如何验证输入是否为大写字母。方法一:使用unicode包Golang中的unicode包提供了一系列函数来判断字符的编码类型。对于大写字母,其对应的编码范围为65-90(十进制),因此我们可以使用unicod

在golang中,验证输入是否为全角字符需要用到Unicode编码和rune类型。Unicode编码是一种将字符集中的每个字符分配一个唯一的数字码位的字符编码标准,其中包含了全角字符和半角字符。而rune类型是golang中用于表示Unicode字符的类型。第一步,需要将输入转换为rune类型的切片。这可以通过使用golang的[]rune类型进行转换,例如

PHP是一种非常流行的编程语言,常用于Web开发。在PHP开发中,我们经常会遇到需要验证字符串的情况。其中,正则表达式是一种非常常用的方法。在对字符串进行验证时,我们经常需要验证字符串是否以特定字符或字符串开头或结尾。本文将介绍如何使用PHP正则表达式来验证字符串的开头或结尾。验证字符串开头在PHP中,通过正则表达式验证字符串开头,我们可以使用"^"符号来表

随着时代的发展,我们越来越注重对数据的校验,特别是对用户输入的校验。对于语言类的校验,如何准确判定输入是否全部为中文字符成为了一个重要问题。而在golang中,我们可以借助unicode包和regexp包来实现这一需求。一、unicode包unicode包提供了一系列对于unicode的核心支持。我们可以使用这个包中的函数来准确地判断一个字符是否为中文字符。

在现代网络世界中,网站的安全性以及用户隐私的保护越来越成为重要话题。其中,人机验证这一技术方法已经成为防范恶意攻击行为的不可或缺的方式之一。GooglereCAPTCHA,是一个被广泛应用于人机验证的工具,其概念已经深入人心,甚至在我们每天使用的许多网站上都能够看到其存在的身影。在本文中,我们将探讨如何在PHP中使用GooglereCAPTCHA进行验证

在PHP中,正则表达式可以用于验证和处理字符串。验证正整数的正则表达式如下所示:$pattern="/^[1-9]d*$/";其中,^表示开头,$表示结尾,[1-9]表示第一个字符必须是1-9之间的数字,d表示其他字符必须是数字,*表示0个或多个。因此,这个正则表达式可以匹配任意一个正整数。下面是一个完整的例子,演示如何使用正则表达式

手机号码验证登录注册的PHP实现指南一、概述手机号码验证是现代互联网应用中常见的功能之一,它不仅可以用于用户注册和登录验证,还可以用于短信验证码发送等场景。本文将介绍如何使用PHP语言实现手机号码验证登录注册功能。二、环境要求在开始编写代码之前,我们需要确保以下环境已经准备就绪:PHP环境:PHP的版本需达到5.6或以上。数据库:本文使用MySQL数据库作为

Go语言是一种快速、高效和强类型的编程语言,被广泛应用于网络服务开发、云计算、数据科学、互联网金融等领域。在Web应用开发中,输入验证是一个非常重要的问题,其中验证输入中的HTML标签是否有效是一个常见的需求。下面我们将介绍如何在Go语言中实现这一需求。HTML标签在Web页面中扮演着重要角色,它们定义了页面的结构、样式和交互行为。但在处理用户输入时,我们需


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3漢化版
中文版,非常好用

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)