怎样让焦点从一个框架的文本框转移到另一个框架的文本框上?谢谢

liuvb 2008-12-24 05:11:17
我有一个框架,页眉(main)页脚(foot)式的
我想点击页脚的按钮(submit按钮)后,使main中的datagrid的模板列绑定的第一个文本框dnjh获得焦点.
...全文
160 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuvb 2008-12-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sprc_lcl 的回复:]
<script language="javascript">
//这段代码在foot页中,button上加上onclick='setmainfocus();'
//前提将main块的name设为mainFrame,随你改动改动下面的mainFrame
function setmainfocus()
{
var objwin= parent.document.all.mainFrame.contentWindow;
var inps = objwin.document.getElementsByTagName('input');
for(var i=0;i <inps.length;i++)
{
var inp = inps[i];

[/Quote]

你好,谢谢帮忙!那怎么样同时让foot页中的input客户端的,失去焦点呢?
anncesky 2008-12-25
  • 打赏
  • 举报
回复
top.main.document.getElementById("datagrid_id").rows(i).cells(j).children(0)
---------------------------
大概就是这样,你可以查看这个datagrid的html看,再对照dom
gengwanshanreally 2008-12-24
  • 打赏
  • 举报
回复
learn
Fibona 2008-12-24
  • 打赏
  • 举报
回复
上面打错了,不是C#代码,是js代码
Fibona 2008-12-24
  • 打赏
  • 举报
回复
js
正常情况下是这样
top.main.document.getElementById("").focus();

但是你的在gridview中,大家都叫同一个名,html页面不一定ID同名,

所以可以这样

var el=top.main.document.getElementByTagName("input");

for(var i=0;i<el.length;i++)
{
if(el[i].type=="text")
{
el[i].focus();
break;
}
}
dearcylin 2008-12-24
  • 打赏
  • 举报
回复
如果非常简单的操作的话,parent和top在这个例子里没有啥区别。
最后的结果都是可以完成想要的操作。

不过如果楼主的程序操作比较复杂,有弹出窗口等等其他操作的话,
建议还是用top吧。
lovehongyun 2008-12-24
  • 打赏
  • 举报
回复
文本框对象.focus();
yyq136 2008-12-24
  • 打赏
  • 举报
回复
我觉得sprc_lcl的方法中的parent应该替换为top
function setmainfocus()
{
var objwin= top.document.all.mainFrame.contentWindow;
var inps = objwin.document.getElementsByTagName('input');
for(var i=0;i <inps.length;i++)
{
var inp = inps[i];
if(inp.type=='text' && inp.id.indexOf('datagrid名')>=0 && inp.id.indexOf('textbox控件名')>0)//datagrid名为你的datagridID,textbox控件名为你的第一个textboxID
{
inp.focus();
break;
}
}
}
应为parent表示父层
rascalwm 2008-12-24
  • 打赏
  • 举报
回复
用JS 得到你要得到焦点的控件 然后就可以直接让其获得焦点了 document.getElementById("Text1").focus()
pgameli 2008-12-24
  • 打赏
  • 举报
回复
不会
帮顶
sprc_lcl 2008-12-24
  • 打赏
  • 举报
回复
<script language="javascript">
//这段代码在foot页中,button上加上onclick='setmainfocus();'
//前提将main块的name设为mainFrame,随你改动改动下面的mainFrame
function setmainfocus()
{
var objwin= parent.document.all.mainFrame.contentWindow;
var inps = objwin.document.getElementsByTagName('input');
for(var i=0;i<inps.length;i++)
{
var inp = inps[i];
if(inp.type=='text' && inp.id.indexOf('datagrid名')>=0 && inp.id.indexOf('textbox控件名')>0)//datagrid名为你的datagridID,textbox控件名为你的第一个textboxID
{
inp.focus();
break;
}
}
}
</script>
sprc_lcl 2008-12-24
  • 打赏
  • 举报
回复

<script language="javascript">
//这段代码在foot页中,button上加上onclick='setmainfocus();'
//前提将main块的name设为mainFrame,随你改动改动下面的mainFrame
function setmainfocus()
{
var objwin= parent.document.all.mainFrame.contentWindow;
var inps = objwin.document.getElementsByTagName('input');
for(var i=0;i<inps.length;i++)
{
var inp = inps[i];
if(inp.type=='text' && inp.id.indexOf('datagrid名')>=0 && inp.id.indexOf('textbox控件名')>0)//datagrid名为你的datagridID,textbox控件名为你的第一个textboxID
{
inp.focus();
break;
}
}
}
</script>
人在江湖 2008-12-24
  • 打赏
  • 举报
回复
用js可以实现的

62,269

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧