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

使.blue按钮只能点击一次。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 回答
1

只需设置disabled属性

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

JSFiddle


正如@doppelgreener 指出的,prop在这里同样有效

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

JSFiddle

于 2013-02-23T21:40:03.387 回答
1

attr()您可以使用以下函数通过 jQuery 轻松完成此操作:

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

顺便说一句,我注意到您正在使用 jQuery。为什么不“jQuery-ify”你的整个代码:

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 回答
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 回答