Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将表内容写入xml?_Javascript_Jquery_Asp.net - Fatal编程技术网

Javascript 如何将表内容写入xml?

Javascript 如何将表内容写入xml?,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,有人能告诉我如何通过单击按钮将客户端表控件内容写入xml吗。我使用的是客户端表“SelectedText”,单击save按钮,我需要将表内容保存为xml。请帮忙 $(document).ready(function() { $('#<%=btnSave.ClientID %>').click(function(event) { var xml = "<schedule>"; $("#selectedColumns").find("tr").eac

有人能告诉我如何通过单击按钮将客户端表控件内容写入xml吗。我使用的是客户端表“SelectedText”,单击save按钮,我需要将表内容保存为xml。请帮忙

 $(document).ready(function() {
  $('#<%=btnSave.ClientID %>').click(function(event) {


    var xml = "<schedule>";
    $("#selectedColumns").find("tr").each(function() {
      xml += "<data>";
      xml += $(this).find("td").eq(1).html() + "\n";
      xml += "</data>";
    });
    xml += "</schedule>";
    this.isPrototypeOf(
    alert(xml);

  })
});
$(文档).ready(函数(){
$('#')。单击(函数(事件){
var xml=“”;
$(“#selectedColumns”).find(“tr”).each(function(){
xml+=“”;
xml++=$(this.find(“td”).eq(1.html()+“\n”;
xml+=“”;
});
xml+=“”;
此.isPrototypeOf(
警报(xml);
})
});

我设法以xml格式获取字符串。如何将此字符串传递给codebehind,以便将其写入xml文件。或者是否有其他方法可以从客户端本身写入此字符串?

如果表的代码如下所示:

<table id="root">
 <tr id="category_1">
  <td>value-1</td>
  <td>value-2</td>
 </tr>
 <tr id="category_2">
  <td>value-7</td>
  <td>value-8</td>
 </tr>
</table>

价值-1
价值-2
价值-7
价值-8
然后,以下JQuery将其转换为xml,其中注释//表示第一次输出:

var xml="";

$("#root").each( function(index){
 xml +="<"+$(this).attr("id")+">"; 
 // <root>

 $("#root tr").each( function(index){
 xml +="<"+$(this).attr("id")+">"; 
 // <root><category_1>

  $(td,this).each( function(index){
  xml +="<"+$(this).html()+">"; 
  // <root><category_1><value_1><value_2>
  }
 }
}
var xml=”“;
$(“#根”)。每个(函数(索引){
xml+=“”;
// 
$(“#根tr”)。每个(函数(索引){
xml+=“”;
// 
$(td,this).每个(函数(索引){
xml+=“”;
// 
}
}
}

应该可以工作:-)ta da…

@NewBie:我假设您无法为
生成id,所以我建议这样做:

正如您在我编写的代码中看到的:
$(“#root tr”).each(函数(索引){

这里,index是表示匹配元素的当前节点/计数的循环变量。例如,如果有50行,则index从1开始,一直到50。因此,可以使用此变量标记
标记:-)

只需这样编辑:

$("#root tr").each( function(index){
 xml +="<"+index+">"; // replaced $(this).attr("id") with index
 // other codes here
}
$(“#根tr”)。每个(函数(索引){
xml+=“”;//将$(this.attr(“id”)替换为索引
//这里还有其他代码
}

祝您好运…

如果您能够使用jQuery,这里也会有类似的问题被问到并回答:您好!如果可以,请尝试显示一些代码。这将使其他人更容易帮助您解决问题。@Banx请参考更新的查询。$(“#selectedTexts tr”)。每个(函数(索引){xml+=”;警报(xml);这仍然给了我根标签。@NewBie:$(“#selectedTexts tr”)显然是说找到一个id为selectedTexts的元素,然后找到该元素的子元素。所以我不明白为什么你会得到标记的属性…我的道歉,不能帮助你解决这样一个奇怪的错误。行是动态生成的。我如何才能得到每行的id。现在我得到的是空白选项卡。问题是发电机已生成ic表行。我正在命名它,但未显示它。