小编Nar*_*emy的帖子

DataList和Enter键事件

我有一个输入文本字段,我触发键事件.在输入时,我使用输入值处理一些特定代码.一切都很棒.

HAML:

%input#myField{:type => "text"}
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

my_field = document.getElementById('myField');

my_field.addEventListener("keypress", function (event) {
    if (event.keyCode == 13) {
        event.preventDefault();

        if (tag_field.value.length != 0) {
            console.log(my_field.value);
            // Run my specific process with my_field.value 
            my_field.value = '';
        }
    }
}, false);
Run Code Online (Sandbox Code Playgroud)

但是现在我想在这个输入上添加datalist.

HAML:

%input#myField{:list => "htmlList", :type => "text"}
%datalist#htmlList
    %option{:value => "toto"} toto
    %option{:value => "foo"} foo
Run Code Online (Sandbox Code Playgroud)

问题是当我在datalist上导航以选择项目时,我按下回车键.在输入键时,我的侦听器被调用并使用输入的初始值处理我的代码.
在此步骤中,该字段的值为空.之后,该值将替换为datalist中选择的值.

所以我的问题是:

  • 有没有办法改变数据列表的行为,用datalist选择的值替换输入值而不按回车键?(禁用datalist的输入键)

  • 有没有办法检测datalist何时处于活动状态(或可见状态)以处理EventListener中的不同行为?

javascript html5 html-datalist

9
推荐指数
1
解决办法
6919
查看次数

在Rails 5中用什么代替沉默(捕获)内核方法?

我在我的规范中使用沉默方法(http://apidock.com/rails/Kernel/capture).

例如,我想避免在这个块上显示:

silence(:stdout) do
  ActiveRecord::Tasks::DatabaseTasks.purge_current
  ActiveRecord::Tasks::DatabaseTasks.load_schema_current
end
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但是自从Rails 4以来它被标记为已弃用.因为它将在下一个版本中删除,我搜索替换但未找到.

是否存在线程安全的东西? 是否存在替代品?

ruby-on-rails

5
推荐指数
1
解决办法
753
查看次数

Rails 5,主分支,使用生成器

对于某些测试,我想尝试rails 5 alpha并使用发生器.

我只是创建一个新的应用程序(rails new test)

我更改了gemfile并添加/替换:

gem 'rails', github: "rails/rails"
gem 'arel', github: 'rails/arel'
Run Code Online (Sandbox Code Playgroud)

我得到这个错误:

~/c/test ??? rails g model Model table_name:string model_name:string indexes:hstore
/Users/user/.rbenv/versions/2.2.2/lib/ruby/2.2.0/rubygems/dependency.rb:315:in `to_specs': Could not find 'railties' (>= 0) among 9 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=/Users/user/codes/test/.gems:/Users/user/.rbenv/versions/2.2.2/gemsets/global:/Users/user/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0', execut
e `gem env` for more information
        from /Users/user/.rbenv/versions/2.2.2/lib/ruby/2.2.0/rubygems/dependency.rb:324:in `to_spec'
        from /Users/user/.rbenv/versions/2.2.2/lib/ruby/2.2.0/rubygems/core_ext/kernel_gem.rb:64:in `gem'
        from /Users/user/codes/test/.gems/bin/rails:22:in `<main>'
Run Code Online (Sandbox Code Playgroud)

如何为轨道5安装铁路?

ruby-on-rails

3
推荐指数
1
解决办法
2517
查看次数

标签 统计

ruby-on-rails ×2

html-datalist ×1

html5 ×1

javascript ×1