3

押した後、ボタンクリックイベントを削除する必要があります。関数を編集して、クリックするたびに無効になってからURLを実行する、またはその逆を行うにはどうすればよいですか。

<form id="edit" action="" method="post">
    <input type="submit" name="button" onclick="this.value='test...'; MyFunction();" id="1" class="button blue" value="Submit">
</form>
<script>
    function MyFunction() {
        var url = "editing.php";
        document.getElementById("edit").setAttribute('action', url);
        return false;
    }
    $(".blue").click(function(){
        $(".blue").removeClass("disabled");
        $(this).addClass("disabled");
    });
</script>
4

7 に答える 7

4

を削除しonclick、適切な方法で実行します。

<form id="edit" action="" method="post">
  <input type="submit" name="button" id="a1" class="button blue" value="Submit">
</form>
<script type="text/javascript">
$(function() {
    $('#a1').on('click', function() {
        $(this).val('test...').prop('disabled', true);
        $("#edit").attr('action', 'editing.php');
        return false;
    });
});
</script>
于 2013-02-23T21:41:18.997 に答える
2
$(".blue").click(function(){
  $(this).attr('disabled', true);
});
于 2013-02-23T21:40:32.823 に答える
1

disabled属性を設定するだけです

$('.blue').attr('disabled', 'disabled');

JSFiddle


@doppelgreenerが指摘したように、propここでも同様に有効です

$('.blue').prop('disabled', true);

JSFiddle

于 2013-02-23T21:40:03.387 に答える
1

関数を使用してjQueryでこれを簡単に行うことができますattr()

$('.blue').click(function() {  
    $(this).attr('disabled', 'disabled');
});

ところで、jQuery を使用していることに気付きました。コード全体を「jQuery化」してみませんか:

function MyFunction() {
    var url = "editing.php";
    $("#edit").attr('action', url);
    return false;
}

$(".blue").click(function(){
    $(this).addClass("disabled").attr('disabled', true);
});
于 2013-02-23T21:40:39.100 に答える
1

.blueボタンを1 回だけクリックできるようにします。jQueryの.one()メソッドはまさにあなたのためのものです。ここにドキュメントがあります。

$("#edit > .blue").one("click", function() {
    //Code here will only run once.
}); 

「関数がクリックされるたびに無効になり、URL を実行するように関数を編集するにはどうすればよいですか。」

ここでフォームを一度だけ送信する必要があると思います。それで:

<form id="edit" action="" method="post">
    <input type="submit" name="button" class="button blue" value="Submit" />
</form>

<script>
    //To make the form SUBMITTABLE ONLY ONCE:
    $("#edit").one("submit", function() { 
        $(".blue").prop("disabled", true); //you can still set the button disabled if you like
        $('#edit').attr('action', "editing.php"); //setting the action attribute here
    });
</script>

あなたが何であるかはわかりませんDOCTYPEが、それが HTML4 の場合。HTML 要素に数値 ID を使用することはできません。HTML5はそれを許可しているようです。この投稿を参照してください。

ここでデモフィドル

于 2013-02-23T22:21:54.490 に答える
0
<input type="submit" name="button" onclick="$(this).attr('disabled', 'disabled')"/>
于 2015-10-29T18:52:20.333 に答える
-1
document.getElementById('1').setAttribute('disabled', 'disabled');
于 2013-02-23T21:39:24.377 に答える