似乎无法让这个工作......
我有一个隐藏某些链接的页面.当加载DOM时,我正在使用jQuery来切换其中的一些元素.这是通过使用如下数据属性来驱动的:
<div class="d_btn" data-usr='48'>
<div class="hidden_button">
Run Code Online (Sandbox Code Playgroud)
然后,我有代码:
$.each($(".d_btn"), function() {
var btn = $(this).data('usr');
if ( btn == '48' ){
$(this).children('.hidden_button').toggle();
}
Run Code Online (Sandbox Code Playgroud)
以上都按计划进行.问题是,一旦if语句被评估,我试图从类.d_btn中删除data-usr.我已经尝试了以下内容并且没有任何作用(即,在加载页面之后,源仍然显示data-usr属性:
$(this).removeAttr("data-usr");
$(this).removeData("usr");
Run Code Online (Sandbox Code Playgroud)
我已经在这个问题上工作了几个小时而且......没什么!非常感谢帮助!
UPDATE
我已经尝试了将数据属性设置为空字符串的好建议,但我仍然没有得到所需的结果.
为了进一步解释,我试图删除属性的原因是当ajax响应向页面添加另一个项目时,之前添加的项目已经显示或隐藏了按钮.在AJAX响应时,我在加载DOM后调用相同的函数.
目前,当通过AJAX添加某些内容时,它会切换所有按钮(显示隐藏的按钮,反之亦然.)呃......
我也完全愿意尝试替代我的方法.谢谢!
UPDATE
嗯,灯泡刚刚闪过,只需使用.show()而不是.toggle()就可以做我想做的事情.
无论如何,我仍然想找到这个问题的答案,因为无论什么时候添加东西,页面都可能会检查数百个项目 - 这看起来非常低效(即使是电脑,哈哈哈.)
我有一个评估模型.评价有很多分数.每当创建新评估时,都会为需要评估的每个用户创建评分记录(请参阅下面我正在使用的当前方法.)因此,例如,可以一次创建40个评分记录.然后,评估所有者使用用户的分数更新每个分数记录.
我正在寻找使用原始SQL,因为每个插入都是它自己的事务并且速度很慢.
我想使用原始SQL将以下内容转换为批量插入语句:
def build_evaluation_score_items
self.job.active_employees.each do |employee|
employee_score = self.scores.build
employee_score.user_id = employee.id
employee_score.save
end
end
Run Code Online (Sandbox Code Playgroud)
有关如何做到这一点的任何想法?我试过改编一下来自Chris Heald的Coffee Powered网站的代码示例,但是没有骰子.
感谢愿意提供帮助的人!
编辑1
我忽略了提到当前方法被包装在一个事务中.
所以,基本上,我正在尝试将其添加到代码块中,因此所有内容都插入到一个语句中(**此代码snippit来自Chris Heald的Coffee Powered网站,讨论了该主题.我会在那里问问题,但帖子是> 3岁.):
inserts = []
TIMES.times do
inserts.push "(3.0, '2009-01-23 20:21:13', 2, 1)"
end
sql = "INSERT INTO user_node_scores (`score`, `updated_at`, `node_id`, `user_id`)VALUES #{inserts.join(", ")}"
Run Code Online (Sandbox Code Playgroud)
我很乐意展示我的一些尝试不起作用的代码......
再次感谢!
好吧,我拼凑了一些类似于上面代码的东西,但我得到一个SQL语句无效错误('evaluation_id'部分.有什么想法?
def build_evaluation_score_items
inserts = []
self.job.active_employees.each do |employee|
inserts.push "(#{self.id}, #{employee.id}, #{Time.now}, #{Time.now})"
end
sql = "INSERT INTO scores ('evaluation_id', `user_id`, 'created_at', `updated_at`)VALUES #{inserts.join(", ")}"
ActiveRecord::Base.connection.execute(sql)
end …Run Code Online (Sandbox Code Playgroud) 我网站上的用户可以拥有子域名.例如,他们的页面网址是
name.example.com
Run Code Online (Sandbox Code Playgroud)
登录用户可以在用户的显示页面上查看更多用户信息,我有一个使用以下代码生成的链接:
user_url(@user, :subdomain => false)
Run Code Online (Sandbox Code Playgroud)
此链接应生成以下URL(其中@user的ID为19)
example.com/users/19
Run Code Online (Sandbox Code Playgroud)
当我将鼠标悬停在链接上时,一切看起来都很好(例如,在浏览器窗口的底部,Safari和FF都正确显示链接.)
问题是当我点击链接时,网站引发了404,网址是:
example.com/users/19
Run Code Online (Sandbox Code Playgroud)
任何人都知道com和用户之间的斜线发生了什么,我该如何取回?
BTW,Rails 3.2和一切都在开发中.这个问题只出现在生产中.
我有一个Attendance模型有两个Boolean数据库属性(:late和:absent),他们都有:default => false.
我正在尝试制作一个只有2个单选按钮的表单.一个是迟到的,一个是缺席的.当然,用户只能选择两者中的一个.
我已经尝试了很多变化,但无法获得任何工作.
任何人都可以帮我一把吗?我知道我可以很容易地选择收藏,但单选按钮将有助于用户体验.另外,由于一系列原因,我需要继续使用db模式...
太感谢了!!!