【发布时间】:2012-04-20 07:57:12
【问题描述】:
我有这个想法
<script type='text/javascript'>
$(function(){
$('#users').click(function(){
alert($("tr[aria-selected=true] td:first").html())
})
})
</script>
在我的 users.js 中
$(function(){
$('#users').click(function(){
alert($("tr[aria-selected=true] td:first").html())
})
})
拥有它们,显然不是同时,给了我不同的结果 基本上我正在尝试检索所选行的 ID,找到它的 attr 值。\
在加载页面后,我会以一种不显眼的方式在我第一次点击一行时得到“null”,然后每次点击一行时都会显示我之前点击的值...TWICE!。 但是当将脚本保留在我的视图中时,我得到了我想要的结果。
我做错了什么?
编辑:
我的看法
<%=raw jqgrid("List of users", "users", "/users",
[
{ :field => "id", :label => "id",:width => 50 },
{ :field => "username", :label => "username",:width => 120,:editable => true },
{ :field => "email", :label => "email",:width => 120,:editable => true },
{ :field => "name", :label => "name",:width => 100,:editable => true },
{ :field => "lastname", :label => "lastname",:width => 100,:editable => true },
{ :field => "groups", :label => "roles",:width => 180}
] , {:add => true,:edit => true,:delete => true,:error_handler => "s",:inline_edit => 'true',:edit_url => post_data_users_url,:sortable_rows => 'true'}
) %>
<p><%= link_to "Edit roles",roles_path%>
<%= link_to "| Edit user",{:action => 'edit'},{:class => 'editLink hide'}%></p>
<script type='text/javascript'>
$(function(){
var _last = new String()
$('#users').click(function(){
_last = $("tr[aria-selected=true] td:first").html()
$(".editLink").attr("href","/users/edit/"+ _last)
$(".editLink").addClass('show')
})
})
</script>
我的布局
<!DOCTYPE html>
<html>
<head>
<title>UserManager</title>
<%= stylesheet_link_tag "application", :media => "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
<%=jqgrid_javascripts%>
<%=jqgrid_stylesheets%>
</head>
<body>
<div>
<%if flash[:notice]%>
<p><%= flash[:notice]%></p>
<%end%>
<%if current_user%>
Logged in as <%= current_user.username%> | <%= link_to 'logout', log_out_path%>
<%end%>
</div>
<%= yield %>
</body>
</html>
在我看来……没什么特别的
【问题讨论】:
-
当您使用 users.js 时,您在哪里包含对文件的引用?在头部还是在身体之后?不确定这是否真的很重要
-
是的,它已经加载了。如果我没记错的话,因为 rails 3.1 出来了所有相应的控制器名称都会加载 js 文件。仍然包含在我的布局中,但结果是一样的。跨度>
-
我想知道它是否与元素不是常规表格而是 jqgrid 有什么关系?我将尝试使用常规表格元素。
-
相同...工作方式不同
标签: jquery ruby-on-rails unobtrusive