我在ASP.NET中有一个动态网格,只要单击“搜索”按钮,就会使用Knockout.js获取数据。加载网格后,用户可以单击任意行以在弹出窗口中检查与该行相关的详细信息。
我想在这里实现的是,点击“搜索”按钮并加载网格中的数据后,焦点应设置为第一行,Enter键应触发点击事件(当用鼠标点击显示弹出窗口时。)
提前致谢!!
注意:使用Knockout js和jquery来获取和绑定asp.net中的数据
答案 0 :(得分:0)
$("#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 ^^
答案 1 :(得分:0)
您可以使用Knockouts hasFocus Binding
hasFocus绑定将DOM元素的焦点状态与viewmodel属性链接起来。这是双向绑定,所以:
如果将viewmodel属性设置为true或false,则关联元素将变为聚焦或未聚焦。
答案 2 :(得分:0)
Try this:
$(document).ready(function(){
var column = $("#<%=GridView1.ClientID %>").find("tr:eq(1)");
column.focus();
});
If it fails
try
ClientIDMode="Static"