IE9生成空白单元格,或者您可以使用ASP.Net Repeater控件来说Ghost Cell。 我尝试javascript regural表达。渲染函数以运行reg。进出口。但该页面包含很少的更新控件并生成错误。
错误:sys.webforms.pagerequestmanagerservererrorexception消息 从服务器收到的邮件无法解析。的ScriptResource.axd
我为这个错误尝试了所有众所周知的链接。 如果你真的有......请建议我。
谢谢
protected override void Render(HtmlTextWriter writer)
{
using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))
{
base.Render(htmlwriter);
string html = htmlwriter.InnerWriter.ToString();
if ((ConfigurationManager.AppSettings.Get("RemoveWhitespace") + string.Empty).Equals("true", StringComparison.OrdinalIgnoreCase))
{
//html = Regex.Replace(html, @"(?<=[^])\t{2,}|(?<=[>])\s{2,}(?=[<])|(?<=[>])\s{2,11}(?=[<])|(?=[\n])\s{2,}", string.Empty);
html = Regex.Replace(html, @"(?<=<td[^>]*>)(?>\s+)(?!<table)|(?<!</table>\s*)\s+(?=</td>)", string.Empty);
html = html.Replace(";\n", ";");
}
writer.Write(html.Trim());
}
另一种解决方案是,但转发器失败
var expr = new RegExp('>[ \t\r\n\v\f]*<', 'g');
document.body.innerHTML = document.body.innerHTML.replace(expr, '><');
答案 0 :(得分:0)
您可以直接访问Repeater控件(在它写入页面并由IE呈现之前)并根据索引删除单元格。
答案 1 :(得分:0)
需要删除“&lt; / td&gt;”之间的空格和“&lt; td&gt;”。
答案 2 :(得分:0)
在 IE9浏览器中进行渲染时,在html表格中阻止不需要的单元格,找到了一个非常有用的脚本。
function removeWhiteSpaces()
{
$('#myTable').html(function(i, el) {
return el.replace(/>\s*</g, '><');
});
}
这个javascript函数应该在页面加载时调用(即onload事件)