2010-07-12 96 views
0

今天我被卡住了,一直在尋找堆棧溢出和谷歌,但是havnt在實現我見過的解決方案時運氣很好。我有一個表單,我試圖創建,當我點擊提交時,在表單中沒有信息時,它會提示錯誤(它沒有驗證),但是當一切正確填寫後,提交按鈕不再有效。jQuery提交表格

<script src="http://code.jquery.com/jquery-latest.js"></script> 
<script type="text/javascript" src="js/jquery.delegate.js"></script> 
<script type="text/javascript" src="js/jquery.validate.js"></script> 
<script type="text/javascript"> 
jQuery.validator.setDefaults({ 
debug: true, 
success: "valid" 
});; 
</script> 

    <script type="text/javascript"> 
    $(document).ready(function(){ 
    $("#q0").validate({ 
    rules: { 
    date1: { 
    required: true, 
    digits: true, 
    rangelength: [4, 4], 
    min: 2010, 
    max: 2015 
    }, 
    date2: { 
    required: true, 
    digits: true, 
    rangelength: [2, 2], 
    max: 12 
    }, 
    date3: { 
    required: true, 
    digits: true, 
    rangelength: [2, 2], 
    max: 31 
    }, 
    date4: { 
    required: true, 
    digits: true, 
    rangelength: [2, 2], 
    max: 23 
    }, 
    date5: { 
    required: true, 
    digits: true, 
    rangelength: [2, 2], 
    max: 59 
    } 
} 
}); 
    }); 
    </script> 

接下來我們有如下形式:

<h1>Select User</h1> 
    <form action="q1.php" method="post" id="q0"><br /><br /> 

<?php 

$con = mysql_connect("localhost","",""); 
if (!$con) 
    { 
    die('PWND: ' . mysql_error()); 
    } 

       mysql_select_db("questionnaire"); 


    $sql = "SELECT id, fname, lname 
     FROM User"; 

       $result = mysql_query($sql); 
    echo '<select name="User" type="number">'; 
       while ($row = mysql_fetch_assoc($result)) 
       { 
        echo '<option value="'.$row['id'].'">'.$row['fname'].' '.$row['lname'].'</option>'; 
       } 
    echo '</select>'; 
mysql_close($con) 
?><br /><br /> 
<p> 
<h4>Date and Time</h4> 

    <label for="date1">Year (YYYY): </label> 
    <input class="left" id="date1" name="date1" /> 
    <br/> 
    <label for="date2">Month (MM): </label> 
    <input class="left" id="date2" name="date2" /> 
    <br/> 
    <label for="date3">Day (DD): </label> 
    <input class="left" id="date3" name="date3" /> 
    <br/> 
    <label for="date4">Hour (HH): </label> 
    <input class="left" id="date4" name="date4" /> 
    <br/> 
    <label for="date5">Minute (MM): </label> 
    <input class="left" id="date5" name="date5" /> 
    <br/> 
</p> 
<h4>Test</h4> 
<select name="qtype" type="number"> 
<option value="1">0</option> 
<option value="2">8</option> 
<option value="3">1</option> 
<option value="4">2</option> 
<option value="5">3</option> 
<option value="6">4</option> 
<option value="7">5</option> 
</select><br /></p> 
<input type="submit" value="Submit"/> 
</form> 

基本上我想它發佈到下一個頁面,像以前一樣,但因爲我試圖jQuery的提交按鈕已停止工作,似乎就像驗證一樣。

我一直在尋找: http://docs.jquery.com/Plugins/Validation(這是我得到這個去的主要資源)。 jQuery disable button (NOT Submit) until field validates + Validation Plugin Help understanding jQuery button enable/disable code

但是我似乎仍然被卡住,不知道我搞砸了上面的某個地方的代碼。提交按鈕保持打破。

回答

3

這是debug option已設置:

debug: true, 

只需刪除選項,或將其設置爲false,它可以防止提交進行測試,以獲得一個提交要經過你需要改變它,從the docs

防止表單提交併嘗試幫助設置驗證,並提供有關缺少方法和其他調試消息的警告。

+0

謝謝!這解決了我的問題! – imbadatjquery 2010-07-12 23:39:08