2010-11-01 55 views
2

好吧,說我有一個頁面,說form.php。在這種形式上說我有複選框A,B和C.我想要做的是當你點擊複選框A時,它顯示錶單A,複選框B顯示錶單B,複選框C顯示錶單c。我需要這一切都是動態的,所以這種情況發生時無需重新加載頁面等。我會假設這會使用Jquery或Ajax。我寧願使用Jquery,只是因爲我有一些經驗,而且我的網站也已經在使用Jquery技術。動態形式與JavaScript/PHP

+0

這是一個編程問題,所以我將它移動到StackOverflow上。 – 2010-11-01 18:26:00

+0

你能發表一些你已經有的代碼嗎? – 2010-11-01 18:36:49

回答

3

不是最美麗的實現,但它指向你的方向。

http://jsfiddle.net/73yuu/

+0

絕對不會美化:)它給了我我需要的東西。謝謝! – 2010-11-01 19:34:11

1

我會做的是加載所有3種形式起來,讓他們在那裏自己的股利和與style="display:none;"所有三個。當用戶點擊複選框(如果只有一個表單可以在時間顯示,我會使用單選按鈕),使用jquery或任何改變特定div顯示的值來阻止。您可以更改div的類以顯示正確的div。

+0

單選按鈕+1。 – SuperMykEl 2013-08-23 17:28:24

0

我知道這是一箇舊帖子,但我正在尋找一個類似的解決方案,我最終在這裏。

我用Ole Melhus的答案作爲出發點,並且使用switch/case而不是if/else對它進行更漂亮和更有用。只是以爲我會在這裏發佈給任何可能需要它的人。

http://jsfiddle.net/N5rfu/

$("#for_form1, #for_form2, #for_form3").change(function(){ 
    switch($(this).attr('id')){ 
     case 'for_form1': 
      $("#for_form2, #for_form3").attr('checked', ''); 
      $("#form2, #form3").hide(); 
      $("#form1").show(); 
      break; 
     case 'for_form2': 
      $("#for_form1, #for_form3").attr('checked', ''); 
      $("#form1, #form3").hide(); 
      $("#form2").show(); 
      break; 
     case 'for_form3': 
      $("#for_form1, #for_form2").attr('checked', ''); 
      $("#form1, #form2").hide(); 
      $("#form3").show(); 
      break; 
    } 

});