如何在DNN下用过jQuery?在模块设计时用定义<asp:TextBox id=“txtName" .... />,结果在输出时id变成了dnn_ctr381_EditDeviceDeploy_txtName,之前写jQuery时使用的$("#txtName")当然不对了,不知如何解决的?
因为ASP.NET 和DNN 都会重写控件的ID,所以写客户端的JS是不能直接使用ID,而是要用一段代码获取 ClientID. 你可以把$("#txtName") 替换为$("<%= txtName.ClientID %>") (示范代码,可能没写对)
这种方式会比较难于管理,还有可以改进为现在服务端把所有的ClientID都打包成一个JS对象,之后再客户端调动,你可以google一下这种方法。
几个可以参考的网页:
jQuery and DotNetNuke Modules
http://www.bitethebullet.co.uk/DNN_Module_and_jQuery.aspx
jQuery UI DotNetNuke integration
http://jquidnn.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29465
Using jQuery with ASP .NET
http://dotnetslackers.com/articles/ajax/using-jquery-with-asp-net.aspx
Using jQuery with ASP.NET Part 2: Making Ajax Callbacks to the Server
http://www.west-wind.com/presentations/jquery/jquerypart2.aspx#PageLevelCallbacks
jQuery + ajax + DNN Modules
http://www.dotnetnuke.com/Default.aspx?tabid=795&forumid=111&postid=342418&scope=posts#342418
JSON.NET