您好我想知道是否可以在我的Javascript中调用codebehind函数? javascript位于我的asp.net网页页面的头部。
我尝试了很多方法,但似乎都没有。它是第一次iv必须这样做,所以一个例子将是一个很好的学习曲线修复。
我在C#中的代码隐藏功能
protected void GetAverageRent_TextChanged(object sender, EventArgs e)
{
string Postcode = _postCodeInput.Value.ToString();
var webGet = new HtmlWeb();
var doc = webGet.Load("http://www.webadress.com/" + Postcode);
HtmlNode AvgPrice = doc.DocumentNode.SelectSingleNode("//div[@class='split2r right']//strong[@class='price big']");
if (AvgPrice != null)
{
AverageRentLbl.Text = AvgPrice.InnerHtml.ToString();
}
else
{
AverageRentLbl.Text = "Invalid Postcode!";
AverageRentLbl.ForeColor = Color.Red;
AverageRentLbl.Font.Bold = true;
}
}
我的Javascript
<script>
function codeAddress() {
document.getElementById('map-canvas').setAttribute("style", "height:200px");
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-34.397, 150.644);
var mapOptions = {
zoom: 16,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
//var address = document.getElementById('_mainContentHolder__postCodeValue').value;
var address = document.getElementById('ContentPlaceHolder1__postCodeInput').value;
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
document.getElementById('ContentPlaceHolder1__latValue').value = results[0].geometry.location.lat();
document.getElementById('ContentPlaceHolder1__longValue').value = results[0].geometry.location.lng();
} else {
alert('Sorry the postcode you entered in invalid. Please try again: ' + status);
document.getElementById('ContentPlaceHolder1__postCodeInput').value = "";
}
});</Script>
答案 0 :(得分:0)
W3Schools有一个关于Ajax的完整教程(http://www.w3schools.com/ajax/default.asp)。 AJAX是异步的javascript和XML,所以它非常明显的javascript可以实现它。如果你只想让你的文本更改事件异步启动,那么我建议你使用更新面板,这将为你节省很多麻烦。
答案 1 :(得分:0)
您可以使用webservice,如下所示..
代码
[WebMethod]
public static string abc()
{
//function body
}
在javascript ..
PageMethods.abc(onSucess2, onError2);
function onSucess2(result) {
}
function onError2(result) {
alert('Error!!!');
}
您必须在页面中放置 scriptmanager 并设置 enabalepagemethods = true