2017-07-13 5 views
2

私は、反復的な制御でダイナミックにロードしているasp.netコントロールを持っています。 私はちょうど画像SRCがロードされていない場合は、代替画像が欲しいまたはエラーイベントが画像要素に解雇されたが、それはaddEventListener onerrorとerrorイベントが動作していません

<asp:Image ID ="test1" ImageUrl="test1.jpg" runat="server" CssClass="NotFoundMain" /> 
<asp:Image ID ="test2" ImageUrl="test14.jpg" runat="server" CssClass="NotFoundMain" /> 

$(document).ready(function() { 

     function callImageError(test) { 
      console.log(test) 
      alert() 
     test.setAttribute('src', './Image/CaratLineImages/ImageNotAvailable.jpg'); 
    } 

    function gotImageElement(item) { 
     item.addEventListener('onerror', callImageError(item)); 
//  item.onerror(callImageError(item)) 
    } 

    var mImg = document.getElementsByClassName("NotFoundMain"); 
    for (var i = 0; i < mImg.length; i++) { 
      gotImageElement(mImg[i]) 
     } 
     //mImg.forEach(gotImageElement) 
    }); 

が機能していない。しかし、これはイメージが存在する場合であっても、このイベントが発生した動作していません画像が見つかりません。 私は間違ったことをしていますか? 助けてください

+0

が、コントロールは、 'src' – VDWWD

+0

は私のエラーイベントが機能しない理由、それはタイプミスが、主なものだったことについて申し訳ありませんが、それは常にのために発射されていない、' ImageUrl'を用いた画像各要素 –

答えて

0

イベント名はonerrorではなくerrorです。別の問題は、イベントが発生したときに呼び出される関数を、すぐに呼び出す代わりに提供する必要があることです。

あなたの問題に関連していない
item.addEventListener('error', function(){ callImageError(item) }); 
+0

私は両方を試しましたが、どちらも動作していません –

+0

@ParshuramKalvikatte '$(document).ready'でも問​​題があるかもしれません。ドキュメントが準備できたら、おそらく 'error'イベントが既に発生している可能性があります。あなたはそれが起こる前にリスナーを登録する必要があります。 –

関連する問題