Jquery 在服务器控件中注册JavaScript代码
我需要一些关于jQuery的帮助。目前,我正在构建包含div的服务器控件。在那个div里面有一个iFrame。我希望能够使用jQuery调整div的大小。我通过简单的样本完成了这一点 如前所述,我正在构建一个服务器控件,因此无法在每个页面上手动添加jQuery。它应该是自动化的,当我在设计器界面上拖放控件时,我不必担心调整Div的大小 目前我正在母版页中注册所有相关的*.js文件。我有一个继承母版页的子页。在那一页上我有我的控制权。我不能创建一个*.js文件并注册它,因为我可以拥有同一控件的多个实例 在哪里注册脚本块?怎么做的Jquery 在服务器控件中注册JavaScript代码,jquery,asp.net,Jquery,Asp.net,我需要一些关于jQuery的帮助。目前,我正在构建包含div的服务器控件。在那个div里面有一个iFrame。我希望能够使用jQuery调整div的大小。我通过简单的样本完成了这一点 如前所述,我正在构建一个服务器控件,因此无法在每个页面上手动添加jQuery。它应该是自动化的,当我在设计器界面上拖放控件时,我不必担心调整Div的大小 目前我正在母版页中注册所有相关的*.js文件。我有一个继承母版页的子页。在那一页上我有我的控制权。我不能创建一个*.js文件并注册它,因为我可以拥有同一控件的多个
对此的任何澄清都将不胜感激。这是服务器控件还是.Ascx服务器控件?如果它是一个服务器控件,它从哪种类型的控件继承?如果从WebControl继承,则可以执行以下操作(这是一个缩写示例,因此需要您做一些工作):
无论哪种方式,如果您有更多问题,请告诉我您使用的是哪种类型,并发布您迄今为止添加的相关代码。Hmmm,我了解您正在编写的内容,我已经为JS函数完成了这项工作。我的问题是jQuery代码。它是这样的-$(document).ready(function(){$('#myControl').draggable();})-这段代码需要在某个地方动态编写。在哪里,如何?为了成为JS文件的一部分,我必须制作整个文件,将其写入光盘,将其注册为资源,并将其注册为脚本。是否建议这样做?我在这里有点迷茫,因为我对jQuery非常陌生。我不明白为什么这会成为一个问题。我在JQuery中使用了这个方法(第一个示例)。毕竟,jQuery只是javascript。当然,您需要包括将要使用的各种jQuery库。不过,你的项目可能已经包含了它们。您有两种选择,包括我在第一个示例中建议的那些库(您也可以通过这种方式添加自己的JS文件),或者让控件的用户将它们包括在他们的应用程序中(我不认为这是不合理的)。不过,我不太清楚你担心的是什么。
Public Class myControl
Inherits WebControl
Private Sub attachWebResources()
Dim styleLink As String = "<link rel='stylesheet' text='text/css' href='{0}' />"
Dim location As String = Page.ClientScript.GetWebResourceUrl(Me.[GetType](), "myApp.WebControls.myStyles.css")
Dim styleInclude As New LiteralControl([String].Format(styleLink, location))
DirectCast(Page.Header, HtmlControls.HtmlHead).Controls.Add(styleInclude)
ScriptManager.RegisterClientScriptResource(Me, Me.GetType, "myApp.WebControls.jquery-1.4.1.min.js")
EnsureChildControls()
End Sub
Protected Overrides Sub OnInit(ByVal e As System.EventArgs)
attachWebResources()
MyBase.OnInit(e)
End Sub
End Class
<Assembly: Web.UI.WebResource("myApp.WebControls.jquery-1.4.1.min.js", "text/javascript")>
Dim myScript As New StringBuilder
myScript.Append("function helloWorld(){" & vbCrLf)
myScript.Append("alert('hello world')" & vbCrLf)
myScript.Append("}" & vbCrLf)
Page.ClientScript.RegisterStartupScript(Me.GetType(), "myKey", myScript.tostring, True)