これはウェブプログラミングに関する初心者の質問です。基本的に私は、Google Map APIを使ってデフォルトのアドレスを示すページを持っています。 "221B Baker Street、London、United Kingdom"を見てもうまく動作しますが、住所を書いてからそれを見たいテキストボックスがあります。それはCSHTML-ページだと私はかみそりの構文javascript変数を設定するか、かみそりの構文で関数を呼び出すにはどうすればいいですか?
@{if(IsPost) { do something }}
を知っているので、基本的に私は、テキストボックスからRequest.Form["FindAddress"];
を取ると、ユーザーが対処するようにjavascriptのmyAddressという変数に設定したいの代わりに表示されます。しかし、私はそれをインラインコーディングする方法を知らない。 IsPost-conditionをjavascript関数の-tagの中に置くと、構文エラーが出てきます。ここに完全なページがあります
<!DOCTYPE html>
<html>
<head id="head">
<title></title>
<link href="@Server.MapPath("~/Styles/Site.css")" rel="stylesheet" type="text/css" />
</head>
<script src="http://maps.google.com/maps?file=api&v=2&key=<YOUR_API_KEY>&sensor=false"
type="text/javascript"></script>
<script type="text/javascript">
var myAddress = "221B Baker Street, London, United Kingdom"; // how do I overwrite this if it is (isPost)?
var map;
var geocoder;
function initialize() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(51.5, -0.1), 10);
map.setUIToDefault();
geocoder = new GClientGeocoder();
showAddress(myAddress);
}
}
function showAddress(address) {
geocoder.getLatLng(address, function (point) { if (!point) { alert(address + " not found"); } else { map.setCenter(point, 15); var marker = new GMarker(point); map.addOverlay(marker); marker.openInfoWindow(address); } });
}
</script>
<body onload="initialize()" onunload="GUnload()">
<form id="form1" runat="server">
<div>
<input type="text" id="FindAddress" name="FindAddress" />
</div>
<div id="map" style="width: 500px; height: 500px"></div>
</form>
</body>
</html>