看板 Ajax 關於我們 聯絡資訊
※ 引述《cluclu (ㄚ嚕)》之銘言: : 首先要先說明一下我對javascript與jQuery都是非常非常*n新手 只是copy公司前輩 : 的程式碼來用與修改 所以先說明一下這些程式碼的目的 : 目的 : 在html做出來的一個下拉式選單裡 若是選中了其中一個選項 (信用卡) : 此時畫面中會跑出信用卡卡號、有效日期等等的 input 欄位 : 若是選了別的選項,這些欄位則不會顯示出來,程式碼如下 : html部分 : ///////////////////////////////////////////////////////////////////// : <span id='credit'> : 信用卡號: : <input type='text' name='credid' id='credid' value='<?=$credid?>' size='20' maxlength='19' /></br> : 信用卡有效日期: : <select id='expiry_year' name='expiry_year' onchange='update_expiry()'><?=select_expiry_year();?></select>年 : <select id='expiry_mon' name='expiry_mon' onchange='update_expiry()'> : <?=select_expiry_mon()?></select>月 : </span> : javascript部分 : ///////////////////////////////////////////////////////////////////// : <script type='text/javascript'> : function show_credit(obj){ : credit = document.getElementById('credit'); 使用 var宣告變數是好習慣。 用 window.credit在 IE可取得 id=credit的 dom element. (永遠不要使用這種方式) 於是 credit = document.getElementById('credit')在 IE就爆炸了 : if(obj.value == '信用卡'){ : credit.style.display = 'inline'; : } : else{ : credit.style.display = 'none'; : } : } : var tooltip = new Array(); : $(document).ready(show_credit(document.getElementById('billac_type'))); : jQuery(function($){ : $("#credid").mask("9999-9999-9999-9999",{completed:function(){alert("信用卡號格式不符: "+this.val());}}); : $("#credit_date").mask("99/99",{completed:function(){alert("信用卡有效日期不符: "+this.val());}}) ; : }); : </script> : ///////////////////////////////////////////////////////////////////// : IE8 左下角 錯誤三角型 出現的錯誤訊息是 : 網頁錯誤詳細資料 : 使用者代理程式: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) : 時間戳記: Wed, 5 Sep 2012 01:24:13 UTC : 訊息: 物件不支援此屬性或方法 : 行: 361 : 字元: 4 : 程式碼: 0 : URI: http://localhost/WEBERP/000werp/store/index.php?act=shopcar : 然後361行 我看網頁的原始碼 就是 : credit = document.getElementById('credit'); : 這邊開始 : 不知道該怎麼修正這個錯誤? : 又或者是有另外可以達成同樣目的的程式寫法,有範例可以給我參考 : 謝謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.138.227