用atlas做了一个页面,需要在局部刷新后执行一段javascript,如错误提示、设置输入焦点等,请问如何实现?实在没分了,不好意思
解决方案 »
- 遍历页面html控件怎写
- 关于验证空间上传到服务器不能随时验证的问题。一个服务器上能,一个不能。
- 关于c#开发ActiveX
- |M| 一个权限树型控件,幕白兄的把多列写在一列已经解决,但当我在页面上放多个或有其他的服务控钮的时候更新checkbox不保存状态
- gridview问题
- 报表问题
- 关于UserControl的问题
- 树 NavigateUrl问题
- datagrid隐藏列
- 高手帮下忙,如何禁止执行地址栏中的JS
- 关于gridview显示记录的问题??急~··最后十分了
- 初学者求问:众多using system..何解。有没有using system清单:即using..代表什么.什么..
就可以拉~注意 如果这个的位置常更新 而有的时候不想执行该代码 就要考虑一下怎么回避和控制
————————————————————————————————————————
这个比较奇怪,给一个标签的innerHTML变为脚本,并不会使得这个脚本执行。有实际确认过的代码示例吗?
因为这样作的访问位置是有问题的TDCC.InnerHtml = "<script type=\"text/javascript\"> document.getElementById(\"NewRssDiv\").style.visibility=\"hidden\";</script>";这里的 TDCC 是 HtmlTableCell 当然LABLE也可以
对应的是 <TD></TD> 当然是RUNAT=SERVER的除非你的刷新顺序有问题 或者有什么东西影响了你不信的话 你单作一个PAGE 来实验
——————————————————————————————————————————
A: 我更加郁闷和疑惑了。atlas也好,其它Ajax也好,在刷新的时候page已经输出,并且是在客户端静态的,服务器端的page与客户端的page没有直接关系了。干脆我们来点直接的,你如何修改下面这个html来让td和label仅仅通过innerHTML来执行脚本呢?
<html>
<body>
<table>
<tr>
<td id="xxx"></td>
</tr>
</table>
<span id="yyy"></span>
<script type="text/javascript">
function test(x)
{
alert(x.innerHTML);
x.innerHTML='????';
alert(x.innerHTML);
}
</script>
<span onclick="test(xxx)">[点我证明TD]</span><br />
<span onclick="test(yyy)">[点我证明Label]</span><br />
<span onclick="alert('TD内是'+xxx.innerHTML);alert('Label内是'+yyy.innerHTML);">[察看结果]</span>
</body>
</html>
另外,我特意测试过,你写的InnerHtml 根本不是dhtml属性,必须写成innerHTML。你写的代码确实是“局部刷新后执行一段javascript”的代码吗?你的PAGE 确实“局部刷新”的吗?
比如一个PANEL 内 而这次动作 要更新这个PANEL区域
假设这个结构,
<table width="70%" >
<tr>
<td><asp:Label ID="Label2" runat="server" Text="RSS种子地址"></asp:Label>
<asp:TextBox ID="TextBox2" runat="server" BackColor="#FFFFC0" BorderColor="#FFFFC0"
BorderStyle="None" Font-Size="8pt" ForeColor="Green" Height="16px" MaxLength="150" Width="156px">RSS</asp:TextBox>
</td>
<td>
</td>
<td id="TDCC" runat="server">
<asp:Label ID="Label5" runat="server" Text="Label"></asp:Label></td>
</tr>
<tr>
<td>
<asp:ImageButton ID="ImageButton3" runat="server" ImageUrl="~/Images/ok.png" OnClick="ImageButton3_Click" /></td>
</tr>
</table>我指定的是当ImageButton3发生回传的时候 更新 这个TABLE所在的PANEL 同时更新页面上的另外一个区域.
而在ImageButton3_Click中结束前加上了这行代码
TDCC.InnerHtml = "<script type=\"text/javascript\"> document.getElementById(\"NewRssDiv\").style.visibility=\"hidden\";</script>";也就是说 将这个TD内的HTML内容换成脚本,
当浏览器更新这一区域的时候改脚本会自动被执行.对于你上边问我怎么修改你的代码,我没办法 我不知道你怎么使用的AJAX 或者怎么个意图