Javascript - 来自代码的Ajax调用

时间:2014-02-24 06:14:37

标签: javascript jquery asp.net ajax

我需要从代码隐藏中调用Ajax javascript函数来获取数据。我使用下面的方法做同样的事情:

Page.ClientScript.RegisterStartupScript(
    GetType(), 
    "MyKey", 
    "Myfunction();", 
    true);

如果我在此处放置一个警告代替MyFunction(),它可以工作,但是当我放置我的功能时它就不起作用了:

   CsText.Append("var Announcements; ")

   CsText.Append("}}} ")
   CsText.Append(" $('.ui-checkbox').checkbox();")

如果我从javascript运行上面的查询,它工作正常。有什么建议?? 难道我们不能从代码隐藏中调用ajax方法吗?或者它在这个调用中使用js文件,因此它无法找到引用或者是否有其他方法可以执行此操作,就像我可以将所有这些放在前端代码中的函数中。使用RegisterStartupScript从后端调用该方法本身。请帮忙......

2 个答案:

答案 0 :(得分:0)

ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MyKey", "Myfunction();", true);

OR

Page.ClientScript.RegisterStartupScript(this.GetType(), "MyKey", "Myfunction();", true);

OR

ClientScript.RegisterStartupScript(this.GetType(), "MyKey", "<script>Myfunction();</script>");

答案 1 :(得分:0)

如果您的代码在客户端正确呈现,则Ajax调用将起作用。但你所写的不是正确的方法。我宁愿单独编写js代码并使用RegisterStartupScript方法调用它。

Js代码

  <script type="text/javascript">
   function Myfunction(){
       $.ajax({ type: "POST",
            url: "SharepointListsAccess.asmx", cache: false
        });
   }
  </script>

代码背后

Page.ClientScript.RegisterStartupScript(
GetType(), 
"MyKey", 
"Myfunction();", 
true);