送信ボタンに遅延を設定したい。つまり、そのボタンをクリックした後、数秒間グレー表示されます。jsでこれを達成するにはどうすればよいですか?
10151 次
4 に答える
4
これはあなたを助けるかもしれません:http://jsfiddle.net/jhNcM/
<input type="button" id="aaa" value="button" />
$('#aaa').click(function() {
var aaa = $(this);
aaa.prop('disabled', true);
setTimeout(function() {
aaa.prop('disabled', false);
}, 3000);
});
于 2012-11-13T13:30:55.753 に答える
2
プレーンJavaScript: http: //jsfiddle.net/R5p5q/1/
<form id="myForm">
<input id="mySubmit" type="submit" value="GO" />
</form>
</ p>
var myForm = document.getElementById('myForm');
myForm.addEventListener("submit", function(evt) {
var elemSubmit = document.getElementById('mySubmit');
elemSubmit.setAttribute("disabled", "disabled");
// Removes disabling after 3 seconds
window.setTimeout(function() {
elemSubmit.removeAttribute("disabled");
}, 3e3);
},false);
于 2012-11-13T13:35:04.437 に答える
1
それを行う方法がありますhttp://jsfiddle.net/Ktk6f/
HTML
<input type="submit" value="submitData" id="myButton" />
JS
$('#myButton').click(function(){
var that = $(this);
that.attr('disabled', true);
var timer = setTimeout(function(){
that.attr('disabled', false);
}, 1000);
});
jQuery JS フレームワークが必要です
于 2012-11-13T13:27:59.617 に答える
0
$("#button").click(function() {
if (this.disabled) {
return;
}
this.disabled = true;
setTimeout($.proxy(function() {
this.disabled = false;
}, this), 3000);
});
于 2012-11-13T13:27:43.987 に答える