-1

以下のコードに従って、このトグルボタンを機能させる方法を知っている人はいますか?最初のクリック後にのみ機能し、ボタンの値は変更されません

http://jsfiddle.net/ossama/2MbsG/

<script type='text/javascript'>
    $(window).load(function () {
        fill.addEventListener("click", function (event) {

            if ($(this).attr('value') == 'Top Up') {
                $('#fill').prev('.ui-btn-inner').children('.ui-btn-text').html('Stop');
                $('#fill').buttonMarkup({
                    theme: "c"
                });
            } else {
                $('#fill').prev('.ui-btn-inner').children('.ui-btn-text').html('Stopping');
                $('#fill').buttonMarkup({
                    theme: "b"
                });
            }

        });
    });
</script>
</head>
<body>
    <input id="fill" type="button" data-inline="true" value="Top Up" data-mini="true"
    data-theme="c" />
4

3 に答える 3

2

この修正されたフィドルは期待どおりに機能します。

fill.addEventListener("click", function(event)
{
        if ($(this).attr('value') == 'Top Up')
        {
            $(this).val('Stop');
            $(this).prev('.ui-btn-inner').children('.ui-btn-text').html('Stop');
            $(this).buttonMarkup({ theme: "c" });
        }       


       else
        {
            $(this).val('Stopping');
            $(this).prev('.ui-btn-inner').children('.ui-btn-text').html('Stopping');
            $(this).buttonMarkup({ theme: "b" });
        } 
});
于 2013-03-21T11:36:59.013 に答える
0

$(this)要素のHTMLを変更するときに値を変更します

$(this).val("Stop");

変更したコード http://jsfiddle.net/2MbsG/5/

于 2013-03-21T11:30:06.383 に答える
-1

それはそれがどうあるべきかというように機能します。valueクリックするたびに属性を変更しないので、オプションifには入りません。else

于 2013-03-21T11:23:40.237 に答える