jQuery経由で送信を傍受し、最初にファイルがサーバーに存在するかどうかを確認したいと考えています。存在している場合は、要求を続行します。メッセージを表示しない場合は、要求を送信しないでください。これは私が持っているものです。jQueryを使用した傍受フォーム
$("#methodForm").submit(function(e){
checkIndex('upload/segments.gen').done(function() {
return true;
}).fail(function() {
e.preventDefault();
alert("No index present!");
return false;
});
});
これはcheckIndex()
次のとおりです。
function checkIndex(file){
return $.ajax({
url : file,
type:'HEAD'
});
}
何が起こることはこれです:ファイルがサーバー上に存在するが、失敗してcheckIndex
戻ります。まず、アラートポップアップが表示された後、それが継続され、ポストリクエストがサーバーに送信されます。
私はcheckIndex()
を他の目的のためにも使用しています。期待どおりに動作するので、エラーは送信ルーチンのどこかにあると確信しています。しかし、私は何が間違っているかを見つけることができません。
残念ながら、これは同期AJAX要求でのみ機能します。ボタンを無効にして、 'done'コールバックで有効にする必要があります。 – Alexander