2011-12-30 85 views
0

在我的商店中,有些訂單沒有在某些網絡瀏覽器上選擇選項(繞過javascript警報)。 什麼是最好的JavaScript來響應各種網絡瀏覽器,包括IE 9.Javascript錯誤消息

這是代碼。

JS

 function doCart() { 
     if (document.form1.opt1 != null && document.form1.opt1.value == "") { 
      alert("Please Select Options"); 
     } else if (document.form1.opt2 != null && document.form1.opt2.value == "") { 
      alert("Please Select Options"); 
     } else if (document.form1.opt3 != null && document.form1.opt3.value == "") { 
      alert("Please Select Options"); 
     } else { 
      document.form1.action = "/order/cartaction.jsp"; 
      document.form1.submit(); 
     } 
    } 

HTML

 <TABLE id="detail" cellpadding=3> 
     <TR> 
      <TD width=110 class="atitle">Size/Color</TD> 
      <TD style="LETTER-SPACING: -1px" align="left"> 
       <select name="opt1" class="select_detail"> 
        <option>Size/Color</option> 
        <option>--------</option> 
        <option value="BLACK/34A">BLACK/34A</option> 
        <option value="BLACK/34B">BLACK/34B</option>          
       </select> 
      </TD> 
     </TR> 

     <TR> 
      <TD class="atitle">Bottom</TD> 
      <TD style="LETTER-SPACING: 1px" align="left"> 
       <select name="opt2" class="select_detail"> 
        <option>Bottom</option> 
        <option value="Black/S">Black/S</option> 
        <option value="Almond/S">Almond/S</option>           
       </select> 
      </TD> 
     </TR> 
    </TABLE> 

    <a href="javascript:doCart();"><img src="/images/list/doCart.gif"></a> 
+0

看起來你錯過了在你的' 2011-12-31 00:05:28

+0

看起來你正在寫一個Javascript。你想:(a)做一些研究? (b)做一些調試? (c)問別人? – 2011-12-31 00:56:11

回答

2

快速修復:更改所述第一select元件的前兩個option元件和所述第二select元件的第一option元件,使得他們有屬性value=""。例如,<option value="">Size/Color</option>

其原因是,在默認情況下,一個option元件的value屬性具有從option元件的內容採取它的值。所以在你的情況下,document.form1.opt1.value最初是Size/Color

+0

我在第一個選項名稱上用insert value =「」修復了它。謝謝。 – 2011-12-31 01:10:48

+0

@PaulCho:如果此答案解決了您的問題,請將其標記爲已接受的答案。請[閱讀常見問題](http://stackoverflow.com/faq#howtoask)。 – PPvG 2012-01-08 23:18:19

0

您是否嘗試過document.getElementsByName(「opt3」)[0] .value或爲選擇元素分配一個id並執行document.getElementById(「opt3」)。value?我真的相信這個解決方案應該是跨瀏覽器的......

+0

這是個好主意。我改變了代碼,它在IE,Crome,Safari中運行得非常好。謝謝。 – 2011-12-31 05:17:06