C# IE9中带中继器控制的重影单元
IE9生成空白单元格,也可以说是鬼单元格,带有ASP.Net中继器控件。 我尝试javascript正则表达式。渲染函数以运行注册表。但是该页面包含很少的更新控件并生成错误 错误:sys.webforms.pagerequestmanagerservererrorexception消息 无法分析从服务器接收的数据。ScriptResource.axd 我尝试了这个错误的所有已知链接。 如果你真的有 多谢各位C# IE9中带中继器控制的重影单元,c#,asp.net,internet-explorer-9,C#,Asp.net,Internet Explorer 9,IE9生成空白单元格,也可以说是鬼单元格,带有ASP.Net中继器控件。 我尝试javascript正则表达式。渲染函数以运行注册表。但是该页面包含很少的更新控件并生成错误 错误:sys.webforms.pagerequestmanagerservererrorexception消息 无法分析从服务器接收的数据。ScriptResource.axd 我尝试了这个错误的所有已知链接。 如果你真的有 多谢各位 protected override void Render(HtmlTextWrite
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());
}
受保护的覆盖无效渲染(HtmlTextWriter)
{
使用(HtmlTextWriter htmlwriter=new HtmlTextWriter(new System.IO.StringWriter()))
{
base.Render(htmlwriter);
字符串html=htmlwriter.InnerWriter.ToString();
if((ConfigurationManager.AppSettings.Get(“RemoveWhitespace”)+string.Empty).Equals(“true”,StringComparison.OrdinalIgnoreCase))
{
//html=Regex.Replace(html,@)(?您可以直接访问中继器控件(在写入页面并由IE呈现之前),并根据其索引删除单元格。需要删除“和”之间的空格“发现了一个非常有用的脚本,在IE9浏览器中呈现时,可以防止html表中出现不需要的单元格
function removeWhiteSpaces()
{
$('#myTable').html(function(i, el) {
return el.replace(/>\s*</g, '><');
});
}
函数removeWhiteSpaces()
{
$('#myTable').html(函数(i,el){
返回el.replace(/>\s*谢谢…但这些单元格不是我定义的,它们只是由IE9生成的…没有其他浏览器这样做我只是重新阅读了你的帖子。你是说IE在表中添加了一个额外的单元格,还是只是在TD标签之间增加了一个额外的空间?是的,它的IE9错误。请看,它看起来是一样的。但是我有一个简单的带有转发器控制的ASPX页面g C#。不应该忽略Jquery,不应该忽略标记之间的AjaxWhitespace[表内部],也不应该将其解释为额外的单元格。当Repeater控件创建新行时,是否可以删除标记之间的空格…我不知道如何…有人知道。。。
function removeWhiteSpaces()
{
$('#myTable').html(function(i, el) {
return el.replace(/>\s*</g, '><');
});
}