在html页面加载时,在服务器端处理某些内容并将结果发送回html页面

时间:2014-01-06 06:11:33

标签: html iframe server-side code-behind serverside-javascript

我需要做一些只能在服务器端处理的东西,而不是只在html页面上使用javascript。我已经在我的其他aspx页面上使用这个过程了。但是,这次我需要在html页面上进行这项工作。

到目前为止,我所做的解决方法是在我的html页面中的某处指向一个aspx页面。我在其代码后面执行该过程并将我需要的内容保存在iframe中的隐藏字段中。我现在可以从iframe获取该值并在我的html页面上使用它。

它可以工作,但我认为这样做可能有一个更简单的方法,而不必为了处理而创建一个新的aspx页面。还有另一种方法可以实现这个目标吗?

更新:具体来说,我需要在页面加载时获取用户的位置(国家/地区),以便相应地更改css。我知道有很多网站可以在我的页面上连接到这一点,但我不知道哪一个是安全的。此外,我们已经为我们的aspx页面提供了自己的方法,所以我想使用它。希望此更新有所帮助。

3 个答案:

答案 0 :(得分:0)

以下是我将如何做我认为你正在解释的事情。你的问题不是很清楚。

http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/

    $.ajax({
      type: "POST",
      url: "PageName.aspx/MethodName",
      data: "{}",
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function(msg) {
        // Do something interesting here.
      }
    });

HTML

    <html>
     <head>
      <title>Calling a page method with jQuery</title>
      <script type="text/javascript" src="jquery-1.2.6.min.js"></script>
      <script type="text/javascript" src="Default.js"></script>
    </head>
    <body>
      <div id="Result">Click here for the time.</div>
    </body>
    </html>

JS

    $(document).ready(function() {
      // Add the page method call as an onclick handler for the div.
      $("#Result").click(function() {
        $.ajax({
          type: "POST",
          url: "Default.aspx/GetDate",
          data: "{}",
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          success: function(msg) {
            // Replace the div's content with the page method's return.
            $("#Result").text(msg.d);
          }
        });
      });
    });

但我真的不知道你要做什么。你真的很模糊。

答案 1 :(得分:0)

是的,更简单的方法是ajax。

这是伪javascript代码......

window.onload = function(){
    ajax.open("your server url");
    ajax.on("success",function(){
        alert("okay, done.");
    });
};

答案 2 :(得分:0)

不建议在您请求的过程中使用iFrame。

考虑使用AJAX将您的请求路由到服务器资源。在你的情况下,它应该是一个asp页面。

这是使用ajax和asp的初学者指南 http://www.w3schools.com/asp/asp_ajax_asp.asp

PS:使用AJAX时请确保您了解

这是一个伪代码供您使用:

<script>
function funcName(){
var xmlhttp;
if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
 document.getElementById("<yourOwnElement'sID>").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","serverResource.asp?q="+<parameters>,true);
xmlhttp.send();
}
</script>