[英]Adding validations via submit button
我在我的應用程序中使用Cakephp和JQuery。 我已經使用創建了表單
<?php
echo $form->create('Result',array('action'=>"submit/$formid"));
foreach ($viewfields as $r):
echo $form->input($r['Attribute']['label'], array('id'=>$r['Attribute']['id'],'name'=>$r['Attribute']['label'],'type'=>'text'));
endforeach;
echo $form->end('submit');?>
這將創建一個帶有id的表單,例如... ResultSubmit1Form,其中1是formid
當我點擊提交按鈕時,它正確地提交數據。 但我想添加JQuery驗證,因為這些字段都不是空的。
我嘗試了一些例子但它沒有用。我怎么能這樣做.....請建議我..
編輯:
我試過了
$("#ResultSubmit/$formidForm").submit(function(event){
event.preventDefault();
/* do validation of fields */
if($("#"+<?=$r['Attribute']['id'];?>).fieldValue()==""){alert("Fill in "+"<?=$r['Attribute']['label'];?>");
$("#"+<?=$r['Attribute']['id'];?>).focus();
}
});
但沒有任何作用,這根本沒有進入事件..
你試圖將PHP與Javascript混合,這是行不通的。 以這一行為例:
$("#ResultSubmit/$formidForm")
你將它打印為純文本js-code,這意味着$formidForm
不被理解為包含值的變量,它被處理為“dollar-sign formidform”。 如果你想打印PHP值,你必須做類似的事情:
$formidForm = "#userDetails";
$("<?php print $formidForm; ?>") /* $("#userDetails") */
現在它在<?php
和?>
,您的服務器知道將該特定部分解釋為PHP,而不是純文本。
至於你的其他js代碼,當你從瀏覽器的網頁上復制/粘貼它時它是什么樣的?
您可以將檢查綁定到表單的.submit()事件:
$("#myForm").submit(function(event){
event.preventDefault();
/* do validation of fields */
});
您也可以從使用驗證插件中受益。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.