如何在点击时创建一个“链接”以将特定关键字输入到输入字段中?

时间:2013-06-16 04:53:31

标签: jquery ruby-on-rails ruby-on-rails-3

我正在研究Rails应用程序 如果单击该按钮,它会自动将@keyword输入body_input
我想用link_to代替button_to。
我怎么能?

查看

<%= button_to "Populate the chat box", "#name", :id => :username, :value => @keyword %>

的jQuery

$(document).ready(function(e) {
     $('button#username').click(function () {
         e.preventDefault();
         $(".chat_input#body_input").val($(this).attr('value'));
     });
});

其他信息(这是HTML中的输出javascript)

<script type="text/javascript">
    //<![CDATA[     
        $(document).ready(function(e) {
             $('button#username').click(function () {
                 e.preventDefault();
                 $(".chat_input#body_input").val($(this).attr('value'));
             });
        });
    //]]>
</script>

2 个答案:

答案 0 :(得分:1)

以下两个在功能上是等效的,但不在标记中:

<%= link_to "Populate the chat box", "#name", :id => :username, :value => @keyword %>
<%= button_to "Populate the chat box", "#name", :id => :username, :value => @keyword %>

正如评论者PSL精明地指出的,如果您决定使用link_to跳转到命名锚点,则需要修改jQuery函数以删除e.preventDefault():< / p>

$(document).ready(function() {
     $('a#username').click(function () {
         $(".chat_input#body_input").val($(this).attr('value'));
     });
});

答案 1 :(得分:1)

我不熟悉ROR语法,但试试这个:

<%= link_to "Populate the chat box", "#name", :id => :username, :value => @keyword %>

和(Id必须是唯一的,因此在ID上的jquery选择器中不要使用标记名称#Id只使用ID)

$(document).ready(function(e) {  
     $('#username').click(function () {  
         e.preventDefault();
         $(".chat_input#body_input").val($(this).attr('value'));
     });
});