我有兩個下拉菜單,國家和狀態爲用戶註冊頁面。這裏國家是基於國家的。第二下拉菜單未選中
如果我選擇國家,然後根據該國的國家將進行篩選。
我的問題是在編輯用戶。
我有以下的jQuery代碼:
var u_id = <?= intval($_GET['id']);?>;
$.post('model/getUser.php',{id:u_id},function(data){
if(data.success == true){
$("#country").val(data.result.country);
dochange('state', data.result.country);
$("#state").val("+data.result.state+").attr('selected',true);
}
},'json');
這裏就是我想要做的是,一旦國家被選中,那麼它會通過使用功能
function dochange(src, val) {
var req = Inint_AJAX();
req.open("GET", "loc.php?data="+src+"&val="+val);
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
req.send(null);
}
loc.php
過濾其狀態$data = $_GET['data'];
$val = $_GET['val'];
$val2 = $_GET['val2'];
if ($data=='country') {
echo "<select class='select-style' name='country' id=\"country\" onChange=\"dochange('state', this.value)\">";
echo "<option value=''>- Select Country -</option>\n";
$result=mysql_query("select * from countries order by countryName asc");
while($row = mysql_fetch_array($result)){
echo "<option value='$row[countryCode]'> $row[countryName]</option>" ;
}
}
else if ($data=='state') {
echo "<select class='select-style' name='state' id=\"stateId\" >\n";
echo "<option value=''>- Select State -</option>\n";
$result=mysql_query("SELECT * FROM state WHERE countryCode= '$val' order by stateName asc");
while($row = mysql_fetch_array($result)){
$selected = "";
if ($val2 == $row[state]) $selected = " selected ";
echo "<option ".$selected. " value=\"$row[state]\">$row[stateName]</option> " ;
}
}
echo "</select>\n";
是越來越過濾,但我不能夠顯示用戶的狀態。
任何人都可以請幫我解決這個問題。
謝謝。
嘗試類似$( 「#state」)VAL(data.result.state)。沒有attr('selected',true); –
@FerminPerdomo是的我也試過這個,我的猜測是在dochange函數$(「#state」).val(data.result.state);這一個沒有發生 – nas
因爲在我輸入$(「#stateId」).val(「01」);在控制檯它是菜單正在改變。 – nas