2013-10-22 54 views
4

我在母版頁的JavaScript運行時錯誤:對象不支持屬性或方法「包含」

<script type="text/javascript"> 
      if (window.location.pathname.contains('Page1.aspx')) { 
       var js = document.createElement("script"); 

       js.type = "text/javascript"; 
       js.src = 'http://code.jquery.com/jquery-1.8.3.js'; 


      } 
      if (window.location.pathname.contains('Page2.aspx')) { 
       var js = document.createElement("script"); 

       js.type = "text/javascript"; 
       js.src = 'http://code.jquery.com/jquery-1.9.1.js'; 


      }  

     </script> 

寫下面的代碼在asp.net應用程序,我有三條第1頁,第2頁,第3頁這由相同的母版頁繼承。當我嘗試訪問第3頁時,它顯示錯誤: 「JavaScript運行時錯誤:對象不支持屬性或方法」包含'「

+0

爲什麼你在兩個頁面上使用不同版本的jQuery? –

+0

由於主頁面存在jQuery衝突。 – Billy

回答

7

除非您自己定義了它(您沒有),否則,有沒有這樣的事情字符串。使用includes(),這幾乎是一回事。

例子:

console.log('abcdefg'.includes('def')); // true 
console.log('abcdefg'.includes('ghi')); // false 

如果你要支持舊的瀏覽器(如Internet Explorer),使用indexOf()

console.log('abcdefg'.indexOf('def') !== -1); // true 
console.log('abcdefg'.indexOf('ghi') !== -1); // false 

無論如何,這是使用兩個不同版本的jQuery的一個可怕的想法在兩頁 - 儘可能避免它。


1:從技術上講,這不是100%正確的:在一個點上有一個內置的功能,但它被重命名爲includes()for compatibility reasons

相關問題