private static string JsTreeJavascriptInit(string TreeViewTarget, string ActionUrl, bool IsCheck, JsTreeDataFormat DataFormat) { string StrCheckBox = IsCheck ? ",\"checkbox\"" : ""; var builder = new TagBuilder("script"); builder.MergeAttribute("type", "text/javascript"); StringBuilder innerHtml = new StringBuilder(); innerHtml.Append("\n\t$(function(){"); innerHtml.AppendFormat("$(\"#{0}\") ", TreeViewTarget); innerHtml.Append(" .jstree({ "); innerHtml.Append(" \"plugins\": [\"themes\", \"" + DataFormat.ToString() + "\", \"ui\", \"crrm\", \"cookies\", \"dnd\", \"search\", \"types\", \"hotkeys\", \"contextmenu\", \"unique\" " + StrCheckBox + " ], "); innerHtml.AppendFormat(" \"{0}\": { ", DataFormat.ToString()); innerHtml.Append(" \"ajax\": { "); innerHtml.AppendFormat(" \"url\": \"{0}\", ", ActionUrl); innerHtml.Append(" \"data\": function(n) { "); innerHtml.Append(" return { "); innerHtml.Append(" \"operation\": \"get_children\", "); innerHtml.Append(" \"id\": n.attr ? n.attr(\"id\").replace(\"node_\", \"\") : 1 "); innerHtml.Append(" }; "); innerHtml.Append(" } "); innerHtml.Append(" } "); innerHtml.Append(" }, "); innerHtml.Append(" 'core':{ 'animation':0 },"); innerHtml.Append(" \"themes\" : { "); innerHtml.Append(" \"theme\": \"default\", "); innerHtml.Append(" \"url\": \"/Content/JsTreeThemes/classic/style.css\", "); innerHtml.Append(" \"dots\": true, "); innerHtml.Append(" \"icons\" : false "); innerHtml.Append(" }, "); innerHtml.Append(" \"ui\": { "); innerHtml.Append(" \"select_limit\" : 1, "); innerHtml.Append(" \"select_multiple_modifier\" : \"ctrl\" "); innerHtml.Append(" } "); innerHtml.Append(" }) "); innerHtml.Append("\n\t});\n "); builder.InnerHtml = innerHtml.ToString(); return(builder.ToString(TagRenderMode.Normal)); }
/// <summary> /// 初始化JsTree /// </summary> /// <param name="helper"></param> /// <param name="TreeId">层对象ID</param> /// <param name="ActionUrl">获取数据源URL</param> /// <param name="IsCheck">是否显示CheckBox</param> /// <param name="DataFormat">返回数据格式</param> /// <returns></returns> public static string TreeView(this HtmlHelper helper, string TreeId, string ActionUrl, bool IsCheck, JsTreeDataFormat DataFormat) { return(JsTreeJavascriptInit(TreeId, ActionUrl, IsCheck, DataFormat)); }