我有一个JS函数,它从服务器处理XML I GET以动态创建一个表,如下所示
// Generate table of services by parsing the returned XML service list.
function convertServiceXmlDataToTable(xml) {
var tbodyElem = document.getElementById("myTbody");
var trElem, tdElem;
var j = 0;
$(xml).find("Service").each(function() {
trElem = tbodyElem.insertRow(tbodyElem.rows.length);
trElem.className = "tr" + (j % 2);
// first column -> service ID
var serviceID = $(this).attr("service__id");
tdElem = trElem.insertCell(trElem.cells.length);
tdElem.className = "col0";
tdElem.innerHTML = serviceID;
// second column -> service name
tdElem = trElem.insertCell(trElem.cells.length);
tdElem.className = "col1";
tdElem.innerHTML = "<a href=javascript:showServiceInfo(" + serviceID + ")>" + $(this).find("name").text() + "</a>";
j++;
}); // each service
}
其中showServiceInfo
根据serviceID
从服务器检索有关每项服务的更多详细信息,并将其显示在与服务表相同的页面中。
到目前为止一切顺利。但是,事实证明,我必须在另一个页面中显示详细的服务信息,而不是与表格相同的页面。我创建了一个带有空布局模板的通用service_info.html
,但我不明白如何将serviceID
传递给这个新页面,以便使用详细的服务信息进行自定义。
我该怎么做?或者,有没有更好的方法来处理这些情况?
谢谢!
答案 0 :(得分:2)
如下:
...
...
tdElem.innerHTML = "<a href=javascript:showServiceInfo.html?serivceId=" + serviceID + ">" + $(this).find("name").text() + "</a>";
...
...
然后showServiceInfo.html页面使用作为QueryString的一部分传入的服务ID并检索数据本身。