代码:
function getQList(ID)
{
var url = "AjaxMethod/QList_Ajax.ashx?id=" + ID + "&ver=" + new Date().getTime();
//jQuery.get(url, ShowXML);
jQuery.ajax({
type: "GET",
url: url,
//data: "id=" + ID + "&ver=" + new Date().getTime(),
success: ShowXML,
dataType: "text/xml"
});
}
function ShowXML(data) {
var container = jQuery("#DragContainer1");
var qlistObj = jQuery(data);
var html = "";
var qListID = qlistObj.children("ID").text();
var qListName = qlistObj.children("Name").text();
var qListInfo = qlistObj.children("Info").text();
if(qListName != "") {
html += "<table width='100%' style='font-size:13px;' border='0' cellspacing='3' cellpadding='0'>";
html += "<tr>";
html += "<td width='90%' style='font-size:15px;'><b>" + qListName + "</b></td>";
html += "<td width='10%' style='font-size:14px;'> </td>";
html += "</tr>";
html += "<tr>";
html += "<td>额外信息:" + qListInfo + "</td>";
html += "</tr>";
html += "<tr><td></td><td> </td></tr>"
html += "</table>";
jQuery("#divQList").html(html);
html = "";
}
var questionArray = qlistObj.find("Question");
jQuery("#questionCount")[0].value = questionArray.length;
questionArray.each(function(i,item){
var question = jQuery(item);
var qID = question.children("ID").text();
var qContent = question.children("Content").text();
var qType = question.children("Type").text();
var qMax_answer_length = question.children("Max_answer_length").text();
var qPreIndex = question.children("PreIndex").text();
var qOptions = question.children("Options").find("Option");
var qTag = "<span id='QTag_" + qID + "'>" + eval(i + 1) + "</span>" ;
var qOrderType = question.children("OrderType").text();
var qIs_mandatory = question.children("Is_mandatory").text();
if (qIs_mandatory == "1")
{
qContent += " <span id=/"Need_" + qID + "/" class=/"need/">*</span>";
}
else
{
qContent += " <span id=/"Need_" + qID + "/" class=/"need/"></span>";
}
html += "<div class='dragbox' id=/"div_" + qID + "/">";
html += "<table width='100%' border='0' cellspacing='0' cellpadding='0' align='right' class='center'>";
html += "<tr>";
html += "<td width='90%' style='padding-left:10px;'>" + qTag + ". " + qContent + "</td>";
html += "<td width='5%' align='right'><a href='javascript:Edit(/"" + qID + "/", /"" + qType + "/");'>";
html += "<img id='IMG_" + qID + "' src='App_Themes/default/images/edit.gif' title='修改' border='0'></a></td>";
html += "<td width='5%' align='right'><input type=/"checkbox/" name=/"chkID/" value=/"" + qID + "/" /> </td>";
html += "</tr>";
if (qType == "0")
{
html += "<tr>";
html += "<td style='padding-left:10px;'>" + ShowOption(0, qMax_answer_length, "", "", "") + "</td>";
html += "</tr>";
}
else
{
html += "<tr>";
var qhtml = "";
var rowCount = parseInt(qOrderType);
var optionCount = qOptions.length;
var widthInfo;
if (parseInt(optionCount) < parseInt(qOrderType))
{
rowCount = parseInt(optionCount);
}
if (qOrderType != "0")
{
widthInfo = " width='" + eval(100 / rowCount) + "%'";
}
qhtml += "<table width=/"100%/" border=/"0/" cellspacing=/"0/" cellpadding=/"0/">";
qhtml += "<tr>";
qOptions.each(function(j,t){
var optionItem = jQuery(t);
var oID = optionItem.find("ID").text();
var oName = optionItem.find("Name").text();
var oValue = optionItem.find("Value").text();
var oTag = "<label id='Tag_" + oID + "' for=/"rb"+ oID +"/">" + GetTag(j + 1) + "</label>";
var oRel_ID = optionItem.find("Rel_ID").text();
var oIndex_num = optionItem.find("Index_num").text();
qhtml += "<td " + widthInfo + " style='padding-left:10px;'>" + ShowOption(qType, qMax_answer_length, oName, oValue, oTag, oID);
qhtml += "</td>";
if (qOrderType == "0")
{
qhtml += "</tr><tr>";
}
else if ((j + 1) % rowCount == 0)
{
qhtml += "</tr><tr>";
}
});
qhtml += "</tr>";
qhtml += "</table>";
html += "<td>" + qhtml + "</td>";
html += "<td> </td>";
html += "</tr>";
}
html += "</table>";
html += "</div>";
if (i == 0)
{
jQuery("#questionList")[0].value = qID;
jQuery("#questionIs_mandatory")[0].value = qIs_mandatory;
jQuery("#questionOrderType")[0].value = qOrderType;
// 初始化排列方式
updateOrderType(qPreIndex);
}
else
{
jQuery("#questionList")[0].value = jQuery("#questionList")[0].value + "," + qID;
jQuery("#questionIs_mandatory")[0].value = jQuery("#questionIs_mandatory")[0].value + "," + qIs_mandatory;
jQuery("#questionOrderType")[0].value = jQuery("#questionOrderType")[0].value + "," + qOrderType;
}
});
container.html(html);
}
XML结构如下:
<QList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.Trusit.com/hd_Feedback">
<ID>49E1B65E-710D-415C-8F9F-293889A52A68</ID>
<Name>HP商用项目满意度回访问卷</Name>
<Info>HP商用项目满意度回访问卷</Info>
<Project>34ed9414-a2cc-456d-a3d7-dc92d203c438</Project>
<Available>1</Available>
<Questions>
<Question>
<ID>E1325D9B-1F4F-4832-845D-50EACBE3C666</ID>
<Content>您对现场工程师的总体服务态度是否满意? (服务态度)</Content>
<Type>1</Type>
<Standard_answer />
<Project>c7305350-7b66-47ed-9d74-b65befc3e16b</Project>
<Max_answer_length>0</Max_answer_length>
<Available>1</Available>
<Rel_ID>5D185A63-1EEB-4478-8457-17CF6EBEC69E</Rel_ID>
<Is_mandatory>1</Is_mandatory>
<OrderType>5</OrderType>
<PreIndex>0</PreIndex>
<Options>
<Option>
<ID>3A9B0D81-5990-4B7D-AAE3-19ED3633607F</ID>
<Name>非常满意</Name>
<Value>5</Value>
<Project>c7305350-7b66-47ed-9d74-b65befc3e16b</Project>
<Available>1</Available>
<Index_num>1</Index_num>
<Rel_ID>F21373DA-3558-4026-9D78-2C94F3717C1B</Rel_ID>
</Option>
<Option>
<ID>F06CF226-83B1-40A0-AA00-52DF9C7E7AB0</ID>
<Name>满意</Name>
<Value>4</Value>
<Project>c7305350-7b66-47ed-9d74-b65befc3e16b</Project>
<Available>1</Available>
<Index_num>2</Index_num>
<Rel_ID>615DB380-92AE-409D-9DED-F7CF08277738</Rel_ID>
</Option>
<Option>
<ID>AA9CCE1C-8FEC-4386-9F13-8FB42422C113</ID>
<Name>一般</Name>
<Value>3</Value>
<Project>c7305350-7b66-47ed-9d74-b65befc3e16b</Project>
<Available>1</Available>
<Index_num>3</Index_num>
<Rel_ID>2B4FFA59-911B-411F-8272-51337318AFE6</Rel_ID>
</Option>
<Option>
...
为什么我读取第一层的xml数据是正常,当我读取到option里面的时候就获取不到数据了,获取的是控制,为什么呢?红色字体部分有问题,请高手指点?