日期:2014-05-16 浏览次数:20343 次
[我有废话要说]
???? 开始写ASP,其实不太喜欢.Net的东西。。。不过比较喜欢写JS,也想学下JQuery~就这样吧~
[正文——把JQuery的Autocomplete封了大家调]
? 需求:
????? 1提供公用的js文件,传入formId和字符数组,输入时,可以根据字符数组在form上autoComplete。
????? 2该字符数组从配置文件中读取
?
part1:读取xml配置文件,放在Hashtable中:
//公共方法,读取配置文件。 using System; using System.Xml; using System.Collections; namespace com.Origin.Base.test { public static class ReadProperty { public static Hashtable ht = null; private static String path = "D://property.xml"; public static string getText(string text) { if(ht==null){ init(); } return (string)ht[text]; } public static void init() { ht = new Hashtable(); string strXmlPath = path; XmlDocument xDoc = new XmlDocument(); xDoc.Load(@strXmlPath); //node数量 int count = xDoc.DocumentElement.ChildNodes.Count; //遍历所有的node for (int k = 0; k < count; k++) { XmlElement pressEle = (XmlElement)xDoc.DocumentElement.ChildNodes[k]; XmlElement pressEleKey; XmlElement pressEleValue; pressEleKey = (XmlElement)pressEle.ChildNodes[0]; pressEleValue = (XmlElement)pressEle.ChildNodes[1]; string key = pressEleKey.FirstChild.Value; string value = pressEleValue.FirstChild.Value; ht.Add(key, value); } } } }?
注释:加上@标示绝对路径。
@strXmlPath
?
xml文件格式:
<list> <node> <key>language</key> <value>java,oralce,jajaja,javascript,vb</value> </node> </list>
?part2:我的asp的cs文件,调用上面的类:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace com.Origin.Base.test { public partial class TestWeb : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } public static string getText(string s) { string properties = ReadProperty.getText(s); return properties; } } }
?注释:提供getText方法,共界面asp调用。
asp调用该方法和我们的js公有库。
?
JS文件:
//test.js function fun(formId, availableTags) { alert('in fun'); $(formId).autocomplete({ source: availableTags }); }
?最后是asp的界面文件:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs" Inherits="com.Origin.Base.test.TestWeb" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta charset="utf-8"> <title>jQuery UI Autocomplete - Default functionality</title> <script type="text/javascript" src="test.js"></script> <script type="text/javascript" src="Scripts/jquery-1.6.4.js"></script> <script type="text/javascript" src="Scripts/ui/jquery.ui.position.js"></script> <script type="text/javascript" src="Scripts/ui/jquery.ui.widget.js"></script> <script type="text/javascript" src="Scripts/ui/jquery.ui.core.js"></script> <script type="text/javascript" src="Scripts/ui/jquery.ui.autocomplete.js"></script> <script type="text/javascript"> $(function () { var v1 = '<%=getText("language")%>'; al