そもそもどのようなJavaScriptを出力しようとしていますか?今のところ、あなたは決してうまくいかないこのようなものを手に入れるでしょう:
if (len > 0) {
{
var IXmlNode = xmlnewObj.createElement("I");
IXmlNode.setAttribute("a", document.getElementById('a' + xx).value);
IXmlNode.setAttribute("X", "PP");
xmlnewObj.documentElement.appendChild(IXmlNode);
}
{
var IXmlNode = xmlnewObj.createElement("I");
IXmlNode.setAttribute("a", document.getElementById('a' + xx).value);
IXmlNode.setAttribute("X", "PP2");
xmlnewObj.documentElement.appendChild(IXmlNode);
}
}
それはこのように機能する可能性がありますが、それでもあなたが必要としているものではないかと思います。
if (len > 0) {
(function() {
var IXmlNode = xmlnewObj.createElement("I");
IXmlNode.setAttribute("a", document.getElementById('a' + xx).value);
IXmlNode.setAttribute("X", "asdasdf");
xmlnewObj.documentElement.appendChild(IXmlNode);
})();
(function() {
var IXmlNode = xmlnewObj.createElement("I");
IXmlNode.setAttribute("a", document.getElementById('a' + xx).value);
IXmlNode.setAttribute("X","asdasdf");
xmlnewObj.documentElement.appendChild(IXmlNode);
})();
}
おそらく最良のオプションは、それを関数に変換し、asp変数をそれに渡すことです。
if(len>0){
<%for xx=0 to SNodes.length-1%>//asp code
{
xmlAppender(<%=xx%>, <%=SNodes.item(xx).getAttribute("PP")%>);
}
<% next %>
}
var xmlAppender = function(i, childData) {
var IXmlNode = xmlnewObj.createElement("I");
IXmlNode.setAttribute("a", document.getElementById('a' + i).value);
IXmlNode.setAttribute("X", childData);
xmlnewObj.documentElement.appendChild(IXmlNode);
};