以下にjqueryモデルのダイアログボックスがあります。ユーザーがページ上のリンクのいずれかをクリックすると、ダイアログ ボックスにキャプチャが表示されます。ユーザーが無効なキャプチャを入力すると、キャプチャ イメージが更新され、新しいテキストが表示されます。しかし、これは起こっていません。以下はコード スニペットです。
<div id="model">
<img id="captchaImage" src="@Url.Content("~/CaptchaImage.ashx?text=" + ViewBag.EncryptedCaptcha)" />
<input id="captchText" type="text" value="" />
<a href="#"id="verfiyCaptcha">Validate</a>
</div>
ユーザーが Validate をクリックすると、テキストが$.getJSON経由で MVC コントローラーに送信されます。コントローラーは isCpatchValid と JSON オブジェクト Captcha にラップされた encryptedText を返します。キャプチャ テキストが有効でない場合は、以下を実行しました。
$("#captchaImage").attr("src", "~/CaptchaImage.ashx?text=" + Captcha.encryptedText);
Chrome デバッガーでは、コントローラーが正しい暗号化テキストを返していることがわかります。しかし、上記のこの行は、キャプチャ イメージを更新しているとは見なされません。これは非同期呼び出しが原因であると思われます。
Jaueryダイアログボックスのキャプチャ画像を更新する方法を教えてください。