我有一个复杂的html表格,我想将其导出为CSV格式。首先,我试图弄清楚这是否可以在服务器端完成。表是使用StringBuilder创建的,并在div中进行吐出。
规则是CSV必须是从浏览器中的HTML标记创建的,而不是从模型或数据创建的。
为了能够在服务器端创建CSV,我无法确定在单击保存按钮后如何通过一种操作方法从浏览器获取/访问确切的标记。
现在代码本身并不多,因为我试图只访问控制器中的表。但这是它的样子: 这是按钮点击的请求。
$.ajax({
async: false,
url: "Application/Export",
dataType: "html",
type: "POST",
success: function (data) {
alert(data);
},
error: function () { alert("Error!"); }
});
控制器暂时为空:
public string Export(string id)
{
//Convert to csv here
return id;
}
有什么想法吗?
答案 0 :(得分:0)
为什么要求您使用HTML表而不是模型中的数据?请解释一下这背后的原因。
编辑:如果你是屏幕抓取,那么你需要通过HTTP请求获取页面,解析HTML,然后在填充CSV时迭代解析的节点。
答案 1 :(得分:0)
看看jsoup:http://jsoup.org/。