[英]convert xml into tree structure using javascript
Hi I want to convert the xml into tree structure . 嗨,我想将xml转换为树结构。 But when I give the path from local machine it works fine but when we give the url path its not working.
但是,当我从本地计算机提供路径时,它可以正常工作,但是当我们提供url路径时,它无法工作。
How can i do that . 我怎样才能做到这一点 。
i am using following code. 我正在使用以下代码。
var strList="";
var level=0;
var curriculumXml ="";
$(document).ready(function()
{
$.ajax({
type: "GET",
url: "xml/development_curriculum.xml(i have to place the weburl here.like http://www.cde.com/development_curriculum.xml",
dataType: "xml",
success: function(data)
{
manipulateXml(data);
$("#curTree").html();
loadParentCur();
}
});
});
/*This method is to get search curriculum XML list*/
function manipulateXml(data)
{
curriculumXml = data;
$(data).find("node").each(function(){
var id = parseInt($(this).attr("id"));
});
}
/*This method is used to get curriculum tree*/
function loadParentCur()
{
if (window.ActiveXObject)
{
var xmlobject=new ActiveXObject("Microsoft.XMLDOM");
xmlobject.async="false";
var xmlString = curriculumXml.xml;
}
// code for Mozilla, Firefox, Opera, etc.
else
{
var xmlString = (new XMLSerializer()).serializeToString(curriculumXml);
}
var json = $.xml2json(xmlString);
var objNode = json.node;
renderTree(objNode);
}
function to_ul(branches)
{
if(branches !=undefined)
{
if(level>0)
{
strList = strList + "<ul style=\"display: none;\">";
}
if(branches.length == undefined)
{
var branch = branches.node;
if (branch)
{
strList = strList + "<li class=\"expandable\" ><div class=\"hitarea expandable-hitarea\" onclick=\"#\"></div><span><a href=\"#\" onclick=\"#\">";
strList = strList + branches.name+"</a></span>";
level=level+1;
to_ul(branch);
}
else
{
strList = strList + "<li id=\""+branches.id+"\" onclick=\"#\" style=\"white-space: nowrap;list-style: none;margin-left:-25px;\"><a href=\"#\" class=\"but_res\" style=\"width:152px; margin-left:30px;\">";
strList = strList + unescape(branches.name)+"</a>";
}
strList = strList +"</li>";
level=0;
}
else
{
for (var i=0; i<branches.length; i++)
{
var branch = branches[i];
if (branch.node)
{
strList = strList + "<li class=\"expandable\" ><div class=\"hitarea expandable-hitarea\" onclick=\"#\"></div><span><a href=\"#\" onclick=\"#\">";
strList = strList + branch.name+"</a></span>";
level=level+1;
to_ul(branch.node);
}
else
{
strList = strList + "<li id=\""+branch.id+"\" onclick=\"#\" style=\"white-space: nowrap;list-style: none;margin-left:-25px;\"><a href=\"#\" class=\"but_res\" style=\"width:152px; margin-left:30px;\">";
strList = strList + unescape(branch.name)+"</a>";
}
strList = strList +"</li>";
level=0;
}
}
strList =strList + "</ul>";
}
}
/*This method is used to render tree*/
function renderTree(objTree)
{
var objTreeNew = objTree;
to_ul(objTreeNew);
$("#curTree").html("<ul class=\"treeview\" id=\"tree\">"+strList+"</ul>");
$("#tree").treeview({
collapsed: true,
animated: "medium",
control:"#sidetreecontrol",
prerendered: true,
persist: ""
});
}
how can we do that? 我们该怎么做? .
。
In case you open your web page locally, accessing an absolute resource will fail due to the http://de.wikipedia.org/wiki/Same-Origin-Policy . 如果您在本地打开网页,由于http://de.wikipedia.org/wiki/Same-Origin-Policy ,访问绝对资源将失败。 You have to open your page from the same domain and port.
您必须从相同的域和端口打开页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.