我使用json方法将这个php文件用于国家/州/城镇列表。
PHP文件:
sleep(1);
$stateID = $_GET['stateID'];
$countyID = $_GET['countyID'];
$townID = $_GET['townID'];
$html = $_GET['html'];
$states = array();
$states['MA'] = "Massachusetts";
$states['VT'] = "Vermont";
$states['SC'] = "South Carolina";
$counties = array();
$counties['MA']['BARN'] = 'Barnstable';
$counties['MA']['PLYM'] = 'Plymouth';
$counties['VT']['CHIT'] = 'Chittenden';
$counties['SC']['ANDE'] = 'Anderson';
$towns = array();
$towns['MA']['BARN']['CHA'] = "Chatham";
$towns['MA']['BARN']['DEN'] = "Dennis";
$towns['MA']['BARN']['YAR'] = "Yarmouth";
$towns['MA']['PLYM']['BRI'] = "Bridgewater";
$towns['MA']['PLYM']['MAR'] = "Marshfield";
$towns['MA']['PLYM']['WAR'] = "Wareham";
$towns['VT']['CHIT']['BUR'] = "Burlington";
$towns['VT']['CHIT']['ESS'] = "Essex";
if($stateID && !$countyID && !$townID){
echo json_encode( $counties[$stateID] );
} elseif( $stateID && $countyID && !$townID ) {
echo json_encode( $towns[$stateID][$countyID] );
} elseif( isset($villages[$stateID][$countyID][$townID]) ) {
echo json_encode( $villages[$stateID][$countyID][$townID] );
} else {
echo '{}';
}
我从MySql数据库中检索值(例如:国家/地区的MA)。 现在我需要将国家/州/城镇名称打印到这样的选择框下拉列表中。
<select id="country" class="validate[required]" name="country">
<option value="0">Choose ...</option>
<option selected="selected" value="'.$country['selector'].'">Show Country Name From php File</option>
</select>
<select id="state" class="validate[required]" name="state">
<option value="0">Choose ...</option>
<option selected="selected" value="'.$state['selector'].'">Show state Name From php File</option>
</select>
<select id="town" class="validate[required]" name="town">
<option value="0">Choose ...</option>
<option selected="selected" value="'.$town['selector'].'">Show town Name From php File</option>
</select>
我该如何打印?
答案 0 :(得分:0)
创建一个调用数据库的php文件。结果通常存储在php数组中。您可以使用json_encode()(http://www.php.net/manual/en/function.json-encode.php)将此数组转换为Json。
只需在php文件中回显即可。
现在用jQuery调用该脚本。有一个名为getJson()的简单jQuery方法。 - 在此处阅读更多相关信息:http://api.jquery.com/jquery.getjson/
这将以Json形式将MySQL结果带给您 - 您现在可以使用JavaScript循环结果,并相应地显示表单。一个简单的例子是(我没有测试过这个,但我希望你能得到这个想法):
$.each(data, function() {
$('#mySelect')
.append($("<option></option>")
.attr("value",data[row].NameOfColumn)
.text(value));
row ++;
});
请注意列的名称 - 这是您要查找的值的键名称。在您的情况下,您可能也想循环键 - 使用外部循环 - 因为数据似乎是在这样的情况下呈现。