2011-12-03 4 views
0

나는 combobox1 항목을 가지고 있습니다 : 과일 & 야채.Combobox 항목을 기반으로 다른 콤보 상자에서 선택한 항목

combobox1에있는 선택한 항목을 기준으로 노터 combobox2을 표시해야합니다.

combobox1의 선택한 항목이 Fruits 인 경우 combobox2 항목은 apple, orange..etc입니다.

combobox1의 선택한 항목이 vegetables 인 경우 combobox2 항목은 다음과 같습니다 radish, lettuce..etc.

PHP로 & HTML을 사용하면 어떻게됩니까? (조건으로 "PHP & HTML 만"을 입력하십시오.).

답변

3

불행하게도 당신의 조건 (PHP & HTML뿐만 아니라 자바 스크립트) 당신이이 일 것 같은 당신의 콤보 상자의 모든 변경 후 양식 제출에 다른 페이지를로드/페이지를 다시로드해야 의미 서버 측 (PHP)에서만 작업하기로 결정한 이후로 선택한 값이 무엇인지 이해할 수있는 유일한 방법입니다.

자바 스크립트 (또는 jQuery와 같은 자바 스크립트 프레임 워크)를 사용하지 않으려면 양식 제출없이 페이지의 내용을 수정할 수 없으므로 두 번째 콤보 상자를 변경할 수 없습니다 첫 번째 콤보 상자 선택을 제출하지 않은 경우

2

이 작업을 수행 할 수 있습니다

<html> 
    <head> 
     <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(function(){ 
       $('#combo').change(function(){ 
        console.log($(this)); 
        $.get("ABC.php" , { option : $(this).val() } , function (data) { 
         $ ('#comboB') . html (data) ; 
        }) ; 
       }); 
      }); 
     </script> 
    </head> 
    <body> 
     <div id="comboBox"> 
      <fieldset> 
       <form> 
        <select name="combo" id="combo"> 
         <option value="">-- Select</option> 
         <option value="1">Fruits</option> 
         <option value="2">Vegetables</option> 
        </select> 
        <select name="comboB" id="comboB"> 
         <option value="">--</option> 
        </select> 
       </form> 
      </fieldset> 
     </div> 
    </body> 
</html> 

데이터와 배열이 드롭 박스에 추가 될 그런 다음 PHP 페이지에서, 당신이 얻을, 물론 당신은 또한에 아약스 호출을 전송해야합니다 드롭 박스를 채우는, 다음 PHP 페이지에 다음과 같습니다

+0

@Andry Knupp : 저는'ajax'에 익숙하지 않습니다. 제 툴은 PHP와 HTML 만 있습니다. 어떤 제안이 있습니까? – Aan

+0

코드가 준비되었습니다. 그냥 공부하십시오. –

+0

@ Andry Knupp : HTML과 PHP만으로는 할 수 없습니까? 친절하게 생각해보십시오. – Aan

1

당신이 사용하는 jQuery를 할 수있는 등 .. 그냥 검증을 조정해야 지금

<?php 
    $Options = Array ( 
     1 => Array ( 
      'Apple' , 
      'Orange' 
     ) , 
     2 => Array ( 
      'Radish' , 
      'Lettuce' 
     ) 
    ) ; 

    forEach ($Options [ $_GET [ 'option' ] ] as $Item) { 
     printf ('<option value="%s">%s</option>' , $Item , $Item) ; 
    } 

예 :

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js" type="text/javascript" ></script> 

<select class="small-input" id="NameCombobox1" name="NameCombobox1">        
    <option value="0">Select one</option> 
    <option value="1">Fruits</option> 
    <option value="2">vegetables</option> 
</select> 

<div id="result"></div> 

<script type="text/javascript"> 

$('#NameCombobox1').change(function() 
    {         
    var NameCombobox1 = $(this).attr('value'); 

    if(NameCombobox1> 0) { 
    $.post(
    "PageWithSelect.php", 
    { BRFLink: NameCombobox1 }, 
    function(data) {               
     $("#result").append(data);   
    }, 
    "html" 
    ); 
    } 
    $('#result').show(); 
    }); 

</script> 
관련 문제