【问题标题】:Set focus to the first row in a gridview using knockoutjs or jquery使用 knockoutjs 或 jquery 将焦点设置到 gridview 中的第一行
【发布时间】:2015-05-19 15:06:40
【问题描述】:

我在 ASP.NET 中有一个动态网格,只要单击“搜索”按钮,就会使用 Knockout.js 为其获取数据。加载网格后,用户可以单击任何行以在弹出窗口中检查与该行相关的详细信息。

我想在这里实现的是,单击搜索按钮并加载网格中的数据后,焦点应设置为第一行,输入键应触发单击事件(就像用鼠标点击时会弹出一样)。

提前致谢!!

注意:使用 Knockout js 和 jquery 在 asp.net 中获取和绑定数据

【问题讨论】:

  • 嗯...!看起来很有趣......你对这里有什么期望?为你编写完整的代码流。
  • @Jai : 不是真的..只是想知道是否有任何事件可用于将第一行集中在网格负载上..

标签: javascript jquery asp.net knockout.js


【解决方案1】:
 Try this:
$(document).ready(function(){   
 var column = $("#<%=GridView1.ClientID %>").find("tr:eq(1)");   
 column.focus();   
});                 
 If it fails 
 try
 ClientIDMode="Static"

【讨论】:

    【解决方案2】:
    $("#search").click(function(){
         $("#first-row").focus();
    })
    
    //active your row   
    if( $("#first-row").is(":focus")){
       $("#first-row").addClass("active") //maybe a style for this active row
    }
    
    $(document).keypress(function(e) {
         if(e.which == 13 && $("#first-row").hasClass("active")) {
             //redirect or show a div..
         }
    });
    

    类似的东西?

    P.S : 我不知道是否可以聚焦 div 或 tr ^^

    【讨论】:

      【解决方案3】:

      你可以使用 Knockouts hasFocus Binding

      hasFocus 绑定将 DOM 元素的焦点状态与 viewmodel 属性联系起来。它是双向绑定,所以:

      如果将 viewmodel 属性设置为 true 或 false,则关联的元素将变为焦点或不焦点。

      Link to Docs

      【讨论】:

        猜你喜欢
        • 2017-05-26
        • 1970-01-01
        • 2011-11-25
        • 2010-11-16
        • 2011-11-11
        • 2014-08-31
        • 2013-06-14
        • 2013-11-11
        • 1970-01-01
        相关资源
        最近更新 更多