2012-03-15 2 views
2

두 번째 드롭 다운 선택 상자가 제 양식에 있습니다. 첫 번째는 사용자가 "vmake"자동차를 선택하도록 허용합니다. vmake가 선택되면 "vmodel"선택 상자가 얇은 공기에서 나타나고 사용자가 vmodel을 선택할 수 있습니다. 그러나 vmodel 상자가 페이지로드에 있기를 바랄뿐입니다. 그래서 그것은 단순한 공기에서 나타나지 않습니다. 사용자가 vmake를 선택할 때까지 열려고하면 비어 있습니다. 내 HTML을 HeresJquery, mysql 및 php 사용하기 두 번째 드롭 다운에서 선택 사항을 변경하려면 하나의 드롭 다운 선택 결과가 필요합니다.

<select name="vmake" id="vmake"> 
<option value"" selected="selected">Make</option> 
<?php getTierOne()l ?> 
</select> 

<select name="vmodel" id="vmodel"> 
<option value"" selected="selected">Model</option> 
</select> 
<span id="wait_1"></span> 
<span id="result_1"></span> 

을 Heres JQuery와 :

$(document).ready(function(){ 
$('#wait_1').show(); 
$('#vmake').change(function(){ 
$('#wait_1').show(); 
$('#result_1').hide(); 
$.get("func.php", { 
func" "vmake", 
drop_varL $('#vmake').val() 
}, function(response){ 
$('#result_1').fadeOut(); 
setTimeout(finishAjax('result_1', '"+escape(response)+"')", 400); 
}); 
return false; 
]); 
}); 

마지막으로 PHP는 내가 원래 코드 형태로 오픈 소스 웹 사이트에 도움을 얻었다

function getTierOne() 
{ 
$result = mysql_query("SELECT DISTINT vmake FROM vmake") 
or die(mysql_error()); 
while($tier = mysql_fetch_array($result)) 
{ echo '<option value="'.tier['vmake'].'">'.$tier['vmake'].'</option>'; 
}} 

if($_GET['func'] == "vmake" && isset ($_GET['func'])) { 
vmake($_GET['drop_var']);} 
function vmake($drop_var) 
{ include_once('db.php'); 
$result = mysql_query("SELECT * FROM vmake WHERE vmake='$drop_var'") 
or die(mysql_error()); 

echo '<option value=" " selected="selected">Model</option>'; 

while($drop_2 = mysql_fetch_array($result)) 
{ echo '<option value="'.$drop_2['vmodel'].'">'.$drop_2['vmodel'].'</option>'; 
}} 

내 데이터베이스에 연결 이제는 원하는대로 할 수 있도록 조금만 변경하면됩니다. 현 시점에서 기존 vmodel 선택 상자 옆에 새로운 vmodel 선택 상자가 생기지 만 페이지로드시 나타나는 선택 상자를 채우고 싶습니다. 어떤 도움이라도 대단히 감사합니다. 모든 것에 감사드립니다.

답변

0

jQuery .load을 사용해 보셨습니까?

예 :

$('#vmodel').load('func.php',{vmake:$('#vmake').val()}); 

당신이 값의 정상적인 배열을 만들 수 있도록,뿐만 아니라 PHP를 변경 한 다음 json_encode()를 통해 전송해야합니다.