您好,登錄后才能下訂單哦!
這篇文章主要介紹yii中form表單提交之前JS如何在提交按鈕上進行驗證,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
很多時候,需要對Yii表單model中的對象設置的rules進行判斷,但是有的時候可能需要在提交之前就在客戶端進行驗證,我這邊設置的方法是在提交按鈕上設置監聽器,如果部分內容為空(比如多選按鈕沒有選擇),那么提示出錯信息。主要目的是頁面不用提交后刷新,進入controller的對應函數之后再判斷出錯。顯示rules()驗證規則函數的錯誤信息。
這里為了驗證是否選擇某個單選按鈕,對提交的按鈕onclick設置監聽,具體如下
<Button onclick = "return fun()"/>
自定義fun()函數,需要有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表單驗證中,提交前驗證,不通過不提交
以前記得有這么一個寫法,就是當表單中的內容不符合驗證規則時,會不允許提交,時間一長忘了怎么寫了,手冊里面也沒寫,查了一下資料,做一下筆記 :
$form = $this->beginWidget('CActiveForm',array( 'id' => 'add_host', 'enableAjaxValidation' => false, 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true //在這個位置做驗證 ), 'focus' => array($model,'ip') )); ?>
以上是“yii中form表單提交之前JS如何在提交按鈕上進行驗證”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。