【问题标题】:Button to toggle text field, true and false用于切换文本字段的按钮,true 和 false
【发布时间】:2014-04-22 18:39:35
【问题描述】:

我有一个表格来创建一个真/假问题。我试图有一个按钮来切换 text_field 的值从真和假。 (我真的不在乎它是怎么做的,我只是希望用户能够轻松地将答案更改为真或假。

这就是我所拥有的,它只会切换一次为 false,并且仅在我单击文本字段而不是按钮时才有效。我正在尝试学习 javascript,所以请耐心等待...

<%= f.label :content, "Answer" %>
<%= f.text_field :content, :value => 'True', :readonly => true, :class => "d-id", :id => "answer" %>
<%= button_tag "Toggle True/False", :id => "answer", :class => "btn btn-small btn-inverse", :type => "button" %>


<script>
function checkAnswer() {
if ($("#answer").val('False'))
    {
    $("#answer").val('True');
    }
    if ($("#answer").val('True'))
    {
    $("#answer").val('False');
    }
}

$(document).ready(function(){
    $('#answer').click(function () {
    checkAnswer();
    });
})
</script>

【问题讨论】:

    标签: javascript jquery ruby-on-rails


    【解决方案1】:

    http://jsfiddle.net/jayblanchard/ene5w/

    我清理了一些你的语法并想出了这个 -

    function checkAnswer() {
        var answer = $('#answer').val();
        if ('False' == answer) {
            $("#answer").val('True');
        } else {
            $("#answer").val('False');
        }
    }
    

    另外,您有两个具有相同 ID 的元素,这在 HTML 页面中是不允许的。你会得到不稳定的结果。您可以将这些更改为类。

    改为按钮而不是链接 - http://jsfiddle.net/jayblanchard/ene5w/1/

    更改按钮的文本 - http://jsfiddle.net/jayblanchard/ene5w/2/

    【讨论】:

    • 效果很好,HTML 帮助 +1。
    【解决方案2】:

    试试这个:

    if ($("#answer").val() === 'False') {
        $("#answer").val('True');
     } else {
        $("#answer").val('False');
    }
    

    【讨论】:

    • 所以这有效,但仅在单击 text_field 时有效。你知道如何让按钮工作吗?
    • 用按钮id 更改了#answer,我注意到您为buttontext input 设置了相同的id,使用class 名称或更改@ 987654329@
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-01
    • 1970-01-01
    • 2018-07-23
    • 1970-01-01
    相关资源
    最近更新 更多