怎样查找页面上对应"Enter"键的control?

CreateSiteCollection 2014-06-04 05:54:13
我在Master中定义了一个search box, 我想用户输入字完后按键盘的Enter就跳转到results.aspx

<input id="SearchBox" value="Search…" onkeypress="if(event.keyCode==13){event.preventDefault();SearchKeyword('/pages/results.aspx','SearchBox',1);}" onfocus="if(this.value == 'Search…') this.value = '';" onblur="if(this.value == '') this.value = 'Search…';" type="text" />


可是, 大部份页面, 把cursor放在searchbox后按ENTER只会refresh一次(回到原本页面), 不懂跳转
只有其中一两页没什么webpart的顺利跳转
有什么好办法可以Debug吗?
...全文
102 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 4 楼 shrenk 的回复:
[quote=引用 3 楼 legendgod 的回复:] [quote=引用 2 楼 shrenk 的回复:] [quote=引用 1 楼 legendgod 的回复:] 说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote] 抱歉我說不清楚 在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次[/quote] 在js后面加一个return false; 可以阻止提交当前页面,也就是阻止自己refresh,你先试一下。 SearchKeyword方法我得看一下代码才知道怎么回事。 [/quote]后面加一个return false; 就解決了! 謝謝
  • 打赏
  • 举报
回复
引用 4 楼 shrenk 的回复:
[quote=引用 3 楼 legendgod 的回复:] [quote=引用 2 楼 shrenk 的回复:] [quote=引用 1 楼 legendgod 的回复:] 说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote] 抱歉我說不清楚 在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次[/quote] 在js后面加一个return false; 可以阻止提交当前页面,也就是阻止自己refresh,你先试一下。 SearchKeyword方法我得看一下代码才知道怎么回事。 [/quote] 加了return false; 就解決了, 謝謝!
计算机器 2014-06-05
  • 打赏
  • 举报
回复
引用 3 楼 legendgod 的回复:
[quote=引用 2 楼 shrenk 的回复:]
[quote=引用 1 楼 legendgod 的回复:]
说错了, 不是大部份, 是所有页面都不懂跳转
我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的

是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote]
抱歉我說不清楚
在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次[/quote]
我看了一下SharePoint自己的搜索框:

这个搜索框使用的onkeypress方法是:
计算机器 2014-06-05
  • 打赏
  • 举报
回复
引用 3 楼 legendgod 的回复:
[quote=引用 2 楼 shrenk 的回复:] [quote=引用 1 楼 legendgod 的回复:] 说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote] 抱歉我說不清楚 在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次[/quote] 页面上有没有什么js错误?
计算机器 2014-06-05
  • 打赏
  • 举报
回复
引用 3 楼 legendgod 的回复:
[quote=引用 2 楼 shrenk 的回复:] [quote=引用 1 楼 legendgod 的回复:] 说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote] 抱歉我說不清楚 在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次[/quote] 在js后面加一个return false; 可以阻止提交当前页面,也就是阻止自己refresh,你先试一下。 SearchKeyword方法我得看一下代码才知道怎么回事。
  • 打赏
  • 举报
回复
引用 2 楼 shrenk 的回复:
[quote=引用 1 楼 legendgod 的回复:] 说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。[/quote] 抱歉我說不清楚 在Focus時才handle事件沒問題, 問題是SearchKeyword('/pages/results.aspx','SearchBox',1);}好像沒有執行, 反而自己refresh了一次
计算机器 2014-06-05
  • 打赏
  • 举报
回复
引用 1 楼 legendgod 的回复:
说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的
是这样的,客户端的控件,只能focus的时候,才能handle按键的事件,除非把事件放到form上去。
  • 打赏
  • 举报
回复
说错了, 不是大部份, 是所有页面都不懂跳转 我觉得是我的search box 本身有问题, 因为浮标不在Search box的话, 按ENTER是没反应的

3,242

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 SharePoint
社区管理员
  • SharePoint社区
  • 霖雨
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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