2014-09-25 67 views
0

嗨,我想知道是否有可能使用javascript/jquery或Ajax來顯示基於單選按鈕的表單。根據單選按鈕創建表單模板

例如我有2種不同的形式如果一個單選按鈕被選中,我想加載第一個窗體,但如果第二個單選按鈕被選中,我想加載第二個窗體。這可能使用Ajax嗎?

如果更容易,我只需要根據單選按鈕顯示/刪除選擇框和輸入框。

感謝

+0

您可以從開始加載以避免爲用戶加載...並隱藏您不想要的加載項。我經常這樣做。 – Loenix 2014-09-25 20:36:55

+0

是的,我想過,但如果我想檢查它們是否填滿了,該怎麼辦? :)不會拒絕的形式,如果它沒有填寫但提交,你有這個自動填充工具這一天..可以給很多麻煩.. – Reshad 2014-09-25 20:39:25

+0

隱藏和禁用從你不想要的形式的所有領域。 您可以使用$(YourForm).find(「:input」)。prop(「disabled」,true)(可以改進) – Loenix 2014-09-25 20:41:21

回答

0

例如:http://jsfiddle.net/ft0se9Ld/

HTML:

Choose your form<br/> 
<input type="radio" name="rdForm" value="form1" checked="checked">form1 
<input type="radio" name="rdForm" value="form2">form2 


<div id="form1"> 
    First name: <input type="text" name="firstname" /><br/> 
    Last name: <input type="text" name="lastname" /> 
</div> 
<br/> 

<div id="form2" style="display:none;"> 
    adress: <input type="text" name="firstname" /><br/> 
    stuff: <input type="text" name="lastname" /> 
</div> 

的Javascript:

$(':radio[name="rdForm"]').change(function() { 
    var choosenForm = $(this).filter(':checked').val(); 

    if(choosenForm === "form1"){ 
     $("#form1").show(); 
     $("#form2").hide(); 
    }else if(choosenForm === "form2"){ 
     $("#form1").hide(); 
     $("#form2").show(); 
    } 
}); 
1

把頁面上的兩種形式,並隱藏,然後兩者。然後,爲具有「表格1」和「表格2」選項的單選按鈕列表添加一個更改事件處理程序。相應地切換表單的顯示。

然後,在您的表單中包含單獨的提交按鈕。爲它們編寫單擊事件處理程序,以驗證任一表單的必填字段。