2012-02-21 45 views
3

這是我的代碼:jQuery驗證和發送形式的鏈接

<script type="text/javascript" src="js/jquery-1.5.1.min.js"></script> 
<script type="text/javascript" src="js/jquery.validate.js"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
    $("#alta").validate(); 
}); 
</script> 
<form id="alta" method="post" action="<?= $this->Html->url('/'); ?>alta"> 
    <label>Nombre:</label> 
    <input type="text" id="name" class="field required" name="data[name]"> 
</form> 
<a href="#" onClick="alta.submit(); return false;" id="button" class="button">Send</a> 

而且我的問題是我不使用提交的輸入,需要使用一個鏈接,但提交表單和無效的。

謝謝

+0

的onClick =「alta.submit()將具有相同的效果 2012-02-21 10:37:03

回答

7

沒有一個提交按鈕,你需要檢查的形式手動是有效的(閱讀註釋後)。

首先,從您的HTML中刪除onclick屬性 - 這不是附加事件的好方法。

<a href="#" id="button" class="button">Send</a> 

然後將其放置在這jQuery代碼:

$("#button").click(function() { 
    if ($("#alta").valid()) { 
     $("#alta").submit(); 
    } 
}); 
2

裏面的點擊處理程序驗證窗體。

$("#button").click(function(e){ 
    e.preventDefault(); 
    if($("#alta").valid()){ 
     //submit 
     $("#alta").submit(); 
    } 
    else 
     return false; 
    }); 

還你不需要驗證表單文件準備