在函数中设置td offSetWidth
Set td offSetWidth in a function
我正试图使用javascript设置表td元素的宽度。在函数外部设置时,宽度设置正确。当相同的代码被封装在一个函数中时,td元素的宽度保持不变。我插入了断点,代码似乎被激发了。谢谢你的帮助。
这项工作:
document.getElementById("myTD").offsetWidth = document.getElementById('<%= ID=myGridView.ClientID %>').rows[0].cells[0].offsetWidth;
这不是:
function myfunction() { document.getElementById("myTD").offsetWidth = document.getElementById('<%= ID=myGridView.ClientID %>').rows[0].cells[0].offsetWidth; };
从后面的代码成功调用该函数
protected void Page_Load(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(),
"myfunction",
"myfunction();",
true);
}
因此服务器调用了javascript。最大的问题是脚本是什么时候执行的,你的原始脚本是什么时间执行的?我的猜测是,你的旧脚本是在页面加载后执行的,所以所有引用的元素都存在,所有元素都是由浏览器绘制的。
你的新脚本可能在内容完全加载之前运行,这意味着浏览器找不到引用的元素,因为它还没有加载,或者没有绘制任何内容,所以所有元素都没有宽度。
我能够让它工作,但是TD元素比gridview元素稍宽。我相信这与填充有关:
function MyFunction(){ document.getElementById("myTd").width = document.getElementById('<%= ID=myGridview.ClientID %>').rows[0].cells[0].offsetWidth; };
相关文章:
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 正在获取生成的PHP td值
- 如何在td元素中添加监听器
- 如何首先设置样式<td>表中包含在窗体中的元素
- 使用javascript获取表的td值
- tu如何将id放在填充了json数据的html表td上
- 改变所有<td>为特定的桌子点击颜色
- JQuery展开和隐藏表td
- jQuery如何获取td单元格值
- 如何调用表td标记内的Onload函数
- 使用谷歌地图api计算距离并将其设置在表格中<td>
- 查找所有TD标签并读取其数据属性
- 在同一tr-jQuery中获取td的值
- jQuery将td onclick值传递到其他表
- 计算HTML表TD中两个数字之间的百分比
- 使用querySelector()获取最后一个td元素
- <td> focusin event .addclass
- 如何通过js更改td的属性
- 选择所有td's基于所选内容覆盖多行
- 在函数中设置td offSetWidth