Javascript 在usercontrol中将服务器端数据获取到客户端脚本的最佳方法
我开始构建一个UserControl,它将出现在一些SharePoint 2007页面布局上。UserControl的目的是根据页面名称显示多个位置的地图。因此,它需要做的是获取页面名称,查询SharePoint列表中的相关地理坐标集合,然后将它们加载到地图上。除了对元素的简单修改和学术性的jqueryajax调用之外,我从未真正完成过太多客户端脚本编写。因此,我试图了解传递数据的常见做法 我在网上看到很多关于AJAX调用页面方法的东西,这是因为这是一个用户控件。另一种选择是对web服务的ajax调用。我以前构建过web服务,但都是为了供.NET客户端使用。设置脚本调用.net web服务的方式仍然是这样吗?那么安全呢?如果我只想让我的页面或网站调用web服务,而不是普通公众,该怎么办Javascript 在usercontrol中将服务器端数据获取到客户端脚本的最佳方法,javascript,asp.net,ajax,json,Javascript,Asp.net,Ajax,Json,我开始构建一个UserControl,它将出现在一些SharePoint 2007页面布局上。UserControl的目的是根据页面名称显示多个位置的地图。因此,它需要做的是获取页面名称,查询SharePoint列表中的相关地理坐标集合,然后将它们加载到地图上。除了对元素的简单修改和学术性的jqueryajax调用之外,我从未真正完成过太多客户端脚本编写。因此,我试图了解传递数据的常见做法 我在网上看到很多关于AJAX调用页面方法的东西,这是因为这是一个用户控件。另一种选择是对web服务的aja
在这种情况下,我甚至不确定是否需要服务。我可以在初始请求期间检索数据并将其放在页面上吗?类似于json将代码中的坐标集合序列化并将其写入隐藏字段以便javascript拾取?有几种方法可以将值从usercontrol传递到javascript 脚本控制: 允许您为web控件包含客户端行为。请参阅下面的一些链接:
RegisterStartupScript和RegisterClientScriptBlock: 允许您在页面上包含客户端脚本块。请参阅下面的一些链接:
HtmlGenericControl: 没有什么能阻止您以友好方式创建脚本标记并将所有javascript逻辑插入
InnerHtml
属性。这可以在最初的请求期间完成
例如:
HtmlGenericControl script = new HtmlGenericControl("script");
script.ID = "script";
script.Attributes.Add("type", "text/javascript");
script.InnerHtml = "alert('Hey');";
//Insert the script into some asp:Panel
panel.Controls.Add(script);
4年后读到这篇文章,我可以告诉我过去的自己:
我从来没有看到过这个答案,但是谢谢你抽出时间。这些似乎是包含javascript的工具,也是一个功能强大的工具,但我对让javascript能够访问数据感兴趣。