yii form 表單提交之前JS在提交按鈕的驗證方法
很多時候,需要對Yii表單model中的對象設置的rules進行判斷,但是有的時候可能需要在提交之前就在客戶端進行驗證,我這邊設置的方法是在提交按鈕上設置監(jiān)聽器,如果部分內(nèi)容為空(比如多選按鈕沒有選擇),那么提示出錯信息。主要目的是頁面不用提交后刷新,進入controller的對應函數(shù)之后再判斷出錯。顯示rules()驗證規(guī)則函數(shù)的錯誤信息。
這里為了驗證是否選擇某個單選按鈕,對提交的按鈕onclick設置監(jiān)聽,具體如下
<Button onclick = "return fun()"/>
自定義fun()函數(shù),需要有return true和false兩種情況
<script>
function fun(){
var CheckBox = document.getElementsByName('checkBox[]');//獲取所有的checkBox
var count=0;
for(i=0;i < CheckBox.length;i++){
if(CheckBox[i].checked == true){
count++;
}
}
if(count == 0 ){
var errorMeg = document.getElementById('HomeworkTrConfig_flag_em_');
errorMeg.style.display = "";
errorMeg.innerHTML="請至少選擇一項";
return false;
}else{
return true;
}
}
</script>
補充:Yii表單驗證中,提交前驗證,不通過不提交
以前記得有這么一個寫法,就是當表單中的內(nèi)容不符合驗證規(guī)則時,會不允許提交,時間一長忘了怎么寫了,手冊里面也沒寫,查了一下資料,做一下筆記 :
$form = $this->beginWidget('CActiveForm',array(
'id' => 'add_host',
'enableAjaxValidation' => false,
'enableClientValidation' => true,
'clientOptions' => array(
'validateOnSubmit' => true //在這個位置做驗證
),
'focus' => array($model,'ip')
));
?>
以上所述是小編給大家介紹的yii form 表單提交之前JS在提交按鈕的驗證方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
基于JavaScript中字符串的match與replace方法(詳解)
下面小編就為大家介紹一下JavaScript中的字符串的match與replace方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12
javascript使用substring實現(xiàn)的展開與收縮文字功能示例
這篇文章主要介紹了javascript使用substring實現(xiàn)的展開與收縮文字功能,涉及javascript元素遍歷與屬性設置相關操作技巧,需要的朋友可以參考下2019-06-06
基于JavaScript實現(xiàn)高德地圖和百度地圖提取行政區(qū)邊界經(jīng)緯度坐標
本文給大家介紹javascript實現(xiàn)高德地圖和百度地圖提取行政區(qū)邊界經(jīng)緯度坐標的相關知識,本文實用性非常高,代碼簡單易懂,需要的朋友參考下吧2016-01-01

