2012-11-17 39 views
0

我有一個代碼,通過調用一個servlet自動生成驗證碼圖像,並將其顯示在HTML表單中。但對於視障人士,我也想把一個音頻文件。因此,我將由servlet生成的驗證碼代碼存儲爲字符串形式的會話屬性,然後根據驗證碼再次生成音頻文件。因此可以說,如果驗證碼是「c-a-t」,則相應地生成音頻文件。現在的問題是,當我在Chrome中刷新頁面時,驗證碼圖像和音頻都會刷新,這很理想,但在Mozilla中,只有圖像刷新而不是音頻文件。Mozilla不刷新音頻標籤文件。 Mozilla的錯誤的音頻

<div class="formRow"> 
       <div class="field"> 
        <img style="margin-left:91px; margin-top:-6px;" class="image" src="http:www.xyz.com/captchaServlet"> 
     //the above line calls a servlet for the image  

       </div> 
       </div></br> 
       <div class="formRow"> 
         <div class="field"> 
         <audio style="margin-left:91px;" controls="controls"> 
     <source src="http:www.xyz.com/getSound" type="audio/wav"> 
//the above line calls servlet for audio file 
    Your browser does not support this audio format. 
    </audio> 
         </div> 
      </div> 

回答

1

它可能會緩存網址。只要使用本作獨特的

<source src="http:www.xyz.com/getSound?rand=<?php echo rand(time()); ?>" type="audio/wav"> 
+0

你的意思是調用同一個URL實際上是讓Mozilla的不是在所有調用的URL!你可能是對的,但它不工作.. –

+0

我正在改變源的URl以及每個window.onload()函數,但它不工作。 –

0

當我試圖在window.onLoad功能過程中改變音頻標籤的來源網址,它沒有工作。但是,當我在body標籤內編寫腳本時,它的功能就像一個魅力。這是我用什麼:

<script type="text/javascript"> 
    if(navigator.userAgent=="Mozilla/5.0 (X19; Ubuntu; Linux i697; rv:10.0) Gecko/22222222 Firefox/16.0"){ 
    var d = new Date(); 
    var n = d.getTime(); 
    document.getElementById("audiowav").src="http://abcd.com/getSound?rand="+n; 
    } 
</script> 

所以基本上我的想法來自@Shahil