2014-04-24 76 views
0

我使用的代碼在不同的標籤部分拆分的形式...PHP標籤 - 表單驗證

<?php 
session_start(); 
require_once('./server_validation/lib.php');?> 
<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>jQuery UI Tabs - Default functionality</title> 

    <script src="./server_validation/jquery-1.4.2.js"></script> 
<script src="./server_validation/jquery.validate.min.js"></script> 
<script> 
    $(document).ready(function(){ 
     $('#my_form').validate({ 
      'rules': <?php echo json_encode($validation_rules); ?> 
     }); 
    }); 
</script> 
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css"> 
    <script src="//code.jquery.com/jquery-1.10.2.js"></script> 
    <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script> 
    <link rel="stylesheet" href="/resources/demos/style.css"> 
    <script> 
    $(function() { 
    $("#tabs").tabs(); 
    }); 
    </script> 
</head> 
<body> 
<form name="my_form" id="my_form" method="post" action="d1.php" enctype='multipart/form-data'> 
<div id="tabs"> 
    <ul> 
    <li><a href="#tabs-1">Nunc tincidunt</a></li> 
    <li><a href="#tabs-2">Proin dolor</a></li> 
    <li><a href="#tabs-3">Aenean lacinia</a></li> 
    </ul> 
    <div id="tabs-1"> 
    <p> <input type="text" name="textfield" id="textfield" /></p> 
    </div> 
    <div id="tabs-2"> 
    <input type="text" name="name" id="name" /> 
    </div> 
    <div id="tabs-3"> 

    </div> 
    <input name="" type="submit" value="submit" /> 
</div> 
</form> 

</body> 
</html> 

標籤工作正常的廣告,我可以通過數據...

標籤從源

http://jqueryui.com/tabs/

但問題是在驗證領域...

這是工作執行PHP文件代碼..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <link rel="stylesheet" href="css/style.css" type="text/css"> 
    <script src="./server_validation/jquery-1.4.2.js"></script> 
<script src="./server_validation/jquery.validate.min.js"></script> 
<script> 
    $(document).ready(function(){ 
     $('#my_form').validate({ 
      'rules': {"name":{"required":true,"minlength":2,"maxlength":30},"dd_number":{"required":true,"maxlength":20},"textfield":{"required":true,"minlength":2,"maxlength":30}}  }); 
    }); 
</script> 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

<body> 
<form name="my_form" id="my_form" method="post" action="reg.php" enctype='multipart/form-data'> 
    <label for="name"></label> 




    <input type="text" name="name" id="name" /> 
    <label for='textarea'></label> 
    <input type="text" name="textfield" id="textfield" /> 
    <input name='Submit' type='submit' value='Submit' /> 


</form> 

</body> 
</html> 

驗證來源: http://anvweb.com/blog/server-side-form-validation-with-jquery-plugin-and-php/

驗證工作在普通形式的罰款,而不標籤...但在標籤不工作..一夥的是什麼問題? ??在此先感謝...

+0

你可以做一個小提琴請 –

+0

<?php echo json_encode($ validation_rules); ?>這是什麼返回 –

+0

它返回的驗證規則是由另一個js腳本完成..它工作在正常形式,,,但也不工作在標籤格式的表格... –

回答

0

將您的validate調用中的ignore設置更改爲您不使用的選擇器。默認情況下,ignore具有「:hidden」,這就是隱藏標籤中的組件無法驗證的原因(即它們會通過,無論它們的值如何)。通過將忽略選擇器更改爲一個永遠不會使用的選擇器(例如「.jksfdhskhfbskeyh」),您的字段將像往常一樣得到驗證。

1

小提琴:

http://jsfiddle.net/ve6KS/3/

HTML:

<form name="my_form" id="my_form" method="post" action="d1.php" enctype='multipart/form-data'> 
    <div id="tabs"> 
     <ul> 
      <li><a href="#tabs-1">Nunc tincidunt</a></li> 
      <li><a href="#tabs-2">Proin dolor</a></li> 
      <li><a href="#tabs-3">Aenean lacinia</a></li> 
     </ul> 
     <div id="tabs-1"> 
      <p> <input type="text" name="textfield" id="textfield" /></p> 
     </div> 
     <div id="tabs-2"> 
      <input type="text" name="name" id="name" /> 
     </div> 
     <div id="tabs-3"> 
      <input type="text" name="dd_number" id="dd_number" /> 
     </div> 
     <input name="" type="submit" value="submit" /> 
    </div> 
</form> 

的jQuery:

$(function() { 
    $("#tabs").tabs(); 
    $('#my_form').validate({ 
     ignore: [], 
     rules: { 
      "name": {"required": true, "minlength": 2, "maxlength": 30}, 
      "dd_number": {"required": true, "maxlength": 20}, 
      "textfield": {"required": true, "minlength": 2, "maxlength": 30} 
     } 
    }); 
}); 
+0

非常感謝......工作正常......但是當我使用相同的代碼時我無法獲得結果頁面..同樣的問題存在... –