2017-01-30 1 views
0

私はアプリケーションを作成しており、私はIE 10を発行しています。 IE 10では、captchaのテキストが最初に表示されていますが、refresh captchaボタンをクリックしても機能しません。私が推測しているのは、動作していないATTRです。 は、ここに私のJSIE10。 Click EvenetとバインドされていないAttr

$(document).ready(function(){ 
    Login.initialise(); 
}); 
var Login = (function(){ 
    var login = function(){ 
     var data = Util.serializeForm("#loginform"); 
     var request = { 
         "ssoid":data.userName, 
         "password":$("#password").val(), 
         "captcha" : data.textCaptcha 
        }; 
     $("#loginform").submit(); 
    }; 
    var loginFormReset = function(){ 
     console.log("loginFormReset"); 
    }; 
    var refreshCaptcha = function(e){ 
     if(e){ 
      e.preventDefault(); 
     } 
     $('#captchaImage').attr(
      'src',Util.getContextPath()+'/RegisterCaptchaController' 
     ); 

    }; 
    var init = function(){ 
     refreshCaptcha(); 
     $("#btnLogin").click(login); 
     $("#btnLoginReset").click(loginFormReset); 
     $("#refreshCaptcha").click(refreshCaptcha); 
     $("#refreshCaptchaTop").click(refreshCaptcha); 
    }; 
    return{ 
     initialise:init 
    } 
})(); 

それが適切にレンダリングされる最初の時間です。 2回目はRefreshボタンをクリックしても動作しません。 Chromeでうまく動作する

+0

あなたは例を設定することはできますか?あなたの場合、「Util」とは何ですか?あなたのコンソールにエラーがありますか? – empiric

答えて

0

ああ、IEの "利点" ... srcをnullに設定してから新しい値を設定する必要があります。他の用語では、この:

$('#captchaImage').attr(
    'src',Util.getContextPath()+'/RegisterCaptchaController' 
); 

は...となるべき:

$('#captchaImage').attr('src', null); 
$('#captchaImage').attr(
    'src',Util.getContextPath()+'/RegisterCaptchaController' 
); 
関連する問題