2014-02-22 129 views
0

我在所有頁面上都設置了這些div,以便通過URL參數捕獲操作是否成功。錯誤div應該顯示何時出現錯誤 - 以及成功div,何時成功。如果通過URL參數傳遞,使用jQuery顯示div

它似乎在其他頁面上正常工作,除了這一個。我經歷了幾次,並無法弄清楚什麼可能是錯的。 ('#action-success').show();這個函數的作用是:

CSS:

/* error div */ 
    div#action-error 
    { 
     text-align: center; 
     border: 1px solid white; 
     display: none; 
     background-color: #a80077; 
     border-radius: 15px; 
    } 

    /* success div */ 
    div#action-success 
    { 
     text-align: center; 
     border: 1px solid white; 
     display: none; 
     background-color: #5a8e4a; 
     border-radius: 15px; 
    } 

HTML:

<!-- RESULT ERROR/SUCCESS --> 
    <div class="container_12" id="action-error"> 
     <span class="error">Error: There was an error deleting your album. Please try again.</span> 
    </div> 
    <div class="container_12" id="action-success"> 
     <span class="success">Your album was deleted successfully.</span> 
    </div> 
    <!-- RESULT ERROR/SUCCESS END --> 

的Jquery:

頁首:(SO上找到)

 <script> 
      function getParameterByName(name) { 
       return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null; 
      } 
     </script> 

底部:

 //------------------------------------------------------------------ 
     var error = getParameterByName('error'); 

     if(error){ 
      alert(error); 
      $('#action-error').show(); 
     } 
     //------------------------------------------------------------------ 
     var success = getParameterByName('result'); 

     if(success){ 
      $('#action-success').show(); 
     } 

我已經看過其他主題,但他們都不是我的問題。任何幫助將不勝感激,並感謝您的時間。

+0

你能發佈任何記錄在你的調試控制檯(Chrome開發人員工具或Firefox Firebug)上的JS錯誤嗎? –

+0

在控制檯中,我得到這個:ReferenceError:$未定義 $('#action-success')。show(); – wribit

+0

jQuery不得包含或可能包含多次。 –

回答

0

好吧,人們 - 這就是當你編碼半睡着了咖啡煙霧時會發生什麼。問題是我忘了在我的文件中包含jQuery庫...抱歉浪費你的時間。

我正在講我的戴斯帽。

+0

哦輝煌:P – SiddharthaRT

+0

我知道......非常尷尬。大聲笑 – wribit

0

你是否用一個將jQuery作爲$傳遞的函數來包裝JavaScript?

(function($){ 
    //----------- 
    var error = getParameterByName('error'); 

    if(error){ 
     alert(error); 
     $('#action-error').show(); 
    } 
    //------------------------------------------------------------------ 
    var success = getParameterByName('result'); 

    if(success){ 
     $('#action-success').show(); 
    } 
    //------------ 

})(jQuery); 
+0

對不起,我不確定我明白你的意思... – wribit

+0

它有點傻,懷疑這一點,但我仍然要求 - 具有'$(「#action-success」)的JavaScript。show )' - 它應該在看起來像上面的函數中被調用。否則,$變量沒有被定義爲jQuery。所以,如果你使用jQuery $,你應該有一個圍繞所有代碼的包裝函數。 – SiddharthaRT

+0

已修改。添加該包裝並嘗試。 – SiddharthaRT