2017-03-19 10 views
0

を待っている間にフォームから、私は、サーバーにファイルを送信Ajaxの答えを得るHTMLUNITは、フォームの回答

onSubmitイベントは、アップロードされたファイルの割合についてのサーバーを尋ねるsetIntervalを起動し、私はjQueryを使ってdinamicallyそれを表示します。

HtmlUnit(submitButton.click())でsubmitボタンをクリックすると、応答されたページを待機し続けます。だから私はアヤックスが何を得るのか分からない。

NicelyResynchronizingAjaxController()は機能しません。
waitForBackgroundJavaScript()は機能しません。 click()の前に子スレッドを作成して、Ajaxが受信しているものを確認しようとしましたが、フォームアクションを待っているように見えます。

どうすれば2つの答えを同時に得ることができますか?それを取得し、どれくらいの期間待たなければならないかを知るためのアイデアはありますか?私は簡単な例を記述するつもりです、あなたがそれを求めるが、実際のコードは非常に複雑であるので

は事前

でいただきありがとうございます。

これは、あなたが見ることができるように、ファイルがフォームからアップロードされた主なHTMLコード

<html> 
<body> 
<script> 
function Upload() { 
     setInterval("waitProcess('x')", 2500); 
} 
function waitProcess(uid) { 
    $.get('x2.php?id='+uid, function(data) { 
     $("#t").val($("#t").val() + "\n" + data); 
    }); 
} 
</script> 
<form action="x3.php" onSubmit="Upload();"> 
<input type="file" name="file"> 
<input id="boton" type="submit" value="Transfer it" /> 
</form> 
<textarea id="t"></textarea> 
</body> 
</html> 

です。私は非同期のAJAXリクエストを使用して、ファイルの割合が既にアップロードされていることを確認します。私は答えの例を示すのに<textarea>を使用します。

私のHtmlUnitコードでは、WebClientの現在のHTMLを読み続けると、<textarea>がAjaxリクエストによって更新されているかどうかを確認しています。しかし、フォームがファイルをアップロードしている間にWebClientはブロックされます。

+0

完全なケースをURLとともに投稿できますか? –

答えて

0

あなたはHtmlUnitの問題に直面しているのではないかと心配しています。 Asncリクエストは現時点では実際には非同期ではありません。 問題をオープンしてください。可能であれば、いくつかのサンプルコードを提供します。

BTW:フォーム提出によってアップロードされたファイルですか、これも非同期リクエストですか?

+0

どちらも同じ時刻@RBRi。非同期要求がどれくらい時間がかかるかをチェックしている間にファイルが 'form submit'によってアップロードされました – Angel

関連する問題