Web サイト http://ip.qq.com/ には、QQ 独自の JS による州と市区町村間の 3 レベルの連携があることがわかりました。そこで調べてみました。彼のインターフェースは次のとおりです。
データをそのまま使用しないのはなぜでしょうか?
驚いたことに、QQ は外部 JS を使用して 3 レベルの連携を実現します。 JS は次のとおりです: http://ip.qq.com/js/geo.js
使用方法:
次のようにコードをコピーします。
<!DOCTYPE html>
<html>
<頭>
<title>QQ JS の都道府県と市町村間の 3 レベルの連携</title>
<!-- QQ の州と市のデータを直接使用 -->
<!--
<script type="text/javascript" src="http://ip.qq.com/js/geo.js"></script>
-->
<script type="text/javascript" src="geo.js"></script>
</head>
<body onload="setup();preselect('陝西省');promptinfo();">
<フォーム>
<select name="province" id="s1">
<オプション></オプション>
</選択>
<select name="city" id="s2">
<オプション></オプション>
</選択>
<select name="town" id="s3">
<オプション></オプション>
</選択>
<input id="アドレス" name="アドレス" type="hidden" value="" />
<input onclick="alert(document.getElementById('address').value); return false;" type="submit" value="Submit" />
</form>
<スクリプト>
// geo.js でアドレスが変更されるたびにこの関数が呼び出されるため、この関数が必要です
関数プロンプト情報()
{
var address = document.getElementById('address');
var s1 = document.getElementById('s1');
var s2 = document.getElementById('s2');
var s3 = document.getElementById('s3');
アドレス.値 = s1.値 + s2.値 + s3.値;
}
</script>
</body>
</html>