evt.preventDefault()
が解消されたら、どのようにデフォルトのアクションを再開できますか?evt.preventDefault()の反対は何ですか?
答えて
私は "反対"はイベントをシミュレートすることになるでしょう。あなたは、Mozillaの例に従え.createEvent()
を使用することができます。
function simulateClick() {
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window,
0, 0, 0, 0, 0, false, false, false, false, 0, null);
var cb = document.getElementById("checkbox");
var canceled = !cb.dispatchEvent(evt);
if(canceled) {
// A handler called preventDefault
alert("canceled");
} else {
// None of the handlers called preventDefault
alert("not canceled");
}
}
jQueryが.trigger()
ので、あなたは要素のイベントをトリガすることができている - 時々便利に。 @Prescottでコメントを1として
$('#foo').bind('click', function() {
alert($(this).text());
});
$('#foo').trigger('click');
、の反対:
evt.preventDefault();
は次のようになります。基本的にに等しくする
私たちは「以来、 'デフォルトを行います'もはやそれを防ぐことはできません。
そうでなければ、私は他のコメントと回答が提供する答えにあなたを指すように傾いている:秒1は、例えば、溶液で受け入れられたことを
How to unbind a listener that is calling event.preventDefault() (using jQuery)?
How to reenable event.preventDefault?
注意、与えられましたredsquare(これは重複して閉じられていない場合のためにここに掲載されています):
$('form').submit(function(ev) {
ev.preventDefault();
//later you decide you want to submit
$(this).unbind('submit').submit()
});
これは私の問題を完全に解決しました。そのスニペットをお寄せいただきありがとうございます! –
ありがとうございます!しばらく私の頭を傷つけていた(私は、フォームを提出する前にいくつかのことをやめてチェックし、特定の状況では提出せず、他人に提出する必要があった)。 –
私は次のパターンを提案します:
document.getElementById("foo").onsubmit = function(e) {
if (document.getElementById("test").value == "test") {
return true;
} else {
e.preventDefault();
}
}
<form id="foo">
<input id="test"/>
<input type="submit"/>
</form>
...私は何かが欠けている場合を除きます。
function(evt) {evt.preventDefault();}
とその反対
function(evt) {return true;}
歓声!
これは私のために働いたが、なぜ誰かがそれを少し説明することができるのだろうかと思っているのだろうか? – edhedges
これはpreventDefault()を取り消しません。実際には 'return true'を除いて同じことをします:何もしません。 – brannigan
はもう動作しません。 !!! – yogihosting
非同期呼び出しを実行するために、jQueryでフォームの送信を遅らせる必要がありました。ここでは単純化されたコードです...あなたは "のpreventDefault" メソッドの後にこれを使用することができます
$("$theform").submit(function(e) {
e.preventDefault();
var $this = $(this);
$.ajax('/path/to/script.php',
{
type: "POST",
data: { value: $("#input_control").val() }
}).done(function(response) {
$this.unbind('submit').submit();
});
});
このシナリオでは、input type = "button"を使用し、input type = "submit"を使用せずにsubmitイベントにバインドする代わりにclickイベントにバインドする方法もあります。 – Strixy
//ここではデフォルトのイベントを返すevt.target(例:defult URLなど)
var defaultEvent=evt.target;
//デフォルトのイベントを保存します。
例::<a href="http://google.com/" class="myevent">Click me</a>
防ぎ、jQueryを使ってフォロースルー:
$('a.myevent').click(function(event) {
event.preventDefault();
// Do my commands
if(myEventThingFirst())
{
// then redirect to original location
window.location = this.href;
}
else
{
alert("Couldn't do my thing first");
}
});
それとも単に実行をjQueryのでclick
イベントからリンクを継続する前に、コマンドを処理するために
if("true")
{
//activate default event..
location.href(defaultEvent);
}
preventDefault();
の後のwindow.location = this.href;
右ですが、これはpreventDefaultがリンクであり、文書本体のtouchmoveとは言わないと仮定しています。 – Bangkokian
これは質問が尋ねたことではありません。 –
私は次のコードを使用しました。それは私のためにうまく動作します。
$('a').bind('click', function(e) {
e.stopPropagation();
});
[jQuery APIのドキュメントで説明されているように](http://api.jquery.com/event.stoppropagation/)、これによりイベントがDOMツリーをバブリングするのを防ぎ、親ハンドラにイベントが通知されないようにします。これは 'event.preventDefault()'と同じではありません。 –
これは質問にも聞いたことではありません。 –
OK!クリックイベントにも対応します:
$("#submit").click(function(e){
e.preventDefault();
-> block the click of the sumbit ... do what you want
$("#submit").unbind('click').click(); // the html click submit work now !
});
jquery on()がこれに対応しています。 namespacesの使用になったときにはエスピカシティーになります。
jquery on()は、(bind()の代わりに)イベントをバインドする現在の方法です。 off()はこれらをアンバインドすることです。名前空間を使用すると、複数の異なるイベントを追加したり削除したりすることができます。
$(selector).on("submit.my-namespace", function(event) {
//prevent the event
event.preventDefault();
//cache the selector
var $this = $(this);
if (my_condition_is_true) {
//when 'my_condition_is_true' is met, the binding is removed and the event is triggered again.
$this.off("submit.my-namespace").trigger("submit");
}
});
今の名前空間を使用して、あなたはこれらのイベントの複数を追加し、最良の例をではないかもしれません提出しながら..あなたのニーズに応じて、それらを削除することができます可能性があり、これは上便利になるかもしれませんキープレスまたは何かをクリックします。..
があなたはいつも、これはあなたのスクリプトでいくつかのクリックイベントにアタッチ使用することができます。
はlocation.href = this.href;
使い方の例は次のとおりです。
jQuery('a').click(function(e) {
location.href = this.href;
});
私が使用した後
このコードは再インスタンス化イベントに私の仕事:
event.preventDefault(); to disable the event.
event.preventDefault = false;
- 1. オブザーバーパターンの反対は何ですか?
- 2. `unpack(" m ")`の反対は何ですか?
- 3. od(1)の反対は何ですか?
- 4. lodashでは、 `pairs()`の反対は何ですか?
- 5. RubyでArray#rejectの反対は何ですか?
- 6. javascriptの(objの "key")の反対は何ですか?
- 7. Laravel - 1対多の関係でsaveメソッドの反対は何ですか?
- 8. jQueryの "change()"イベントの反対は何ですか?
- 9. このフルテキスト検索の反対は何ですか?
- 10. ChannelFactory <TChannel> .CreateChannelとは何が反対ですか?
- 11. 「git fetch」の反対は何でしょうか?
- 12. assert_selectの反対ですか?
- 13. __add__の反対ですか?
- 14. awakeFromNib反対ですか?
- 15. 構造とは反対ですか?
- 16. "svn up"の反対ですか?
- 17. git cherry-pickの反対ですか?
- 18. XPath:string()関数の反対ですか?
- 19. Aptana svn:コミットの反対ですか?
- 20. 反対
- 21. os.path.commonprefixの反対
- 22. 反対側のネイティブビューに反応する
- 23. ミュールメッセージの対象は何ですか?
- 24. JQuery find()の反対
- 25. Linq:テイクの "反対"?
- 26. BSTの反復型対反復型ソリューション
- 27. は何ですか?Latin1_General_CI_AI対Latin1_General_CI_AS
- 28. Tableau対Pentaho:違いは何ですか?
- 29. List対ArrayListとは何ですか?
- 30. JavaScriptのObject.freezeまたはObject.sealの反対
を、私はあなたがevt.preventDefault(呼び出すことはないので、一般的に、あなたの関数が実行されますと、デフォルトの動作が実行さだと思います)最初は – Prescott
あなたがしようとしていることの例を教えてもらえますか? –
可能な重複はありますか? :http://stackoverflow.com/questions/1551389/how-to-enable-default-after-event-preventdefault – Nobita