簡體   English   中英

帶有Facebox的Onclick在IE8中不起作用

[英]Onclick with facebox not working in IE8

我正在一個包含Facebox的網站上進行工作,以加載購物籃程序的內容。

當將某些東西添加到購物籃中並單擊綠色的願望清單按鈕時,我很難將其加載到IE8中,它可以在所有現代瀏覽器上使用。 誰能看到為什么它無法在Facebox的IE8中加載內容?

我在願望清單按鈕上使用以下代碼:

<div onclick="location.href='wishlist.php?basket=true'" rel="msgbox" id="mybasket">

是否有足夠的信息來查看網站鏈接上的源? 如果您需要更多代碼,請詢問。

在使用Chrome的Mac上-如您所見,單擊綠色的願望清單按鈕后,面盒可以很好地打開。

在使用IE8的PC上-單擊綠色的願望清單按鈕時,面框會打開,但不會加載內容。

這是返回數據的問題,結尾處還有一個</div>

<div id="msgbox_title">Your Wish List<div id="closeme" onclick="jQuery(document).trigger('close.facebox')">x</div></div>
<form method="post" action="wishlist.php">
<div id="msgbox_body" style="max-height:400px;min-height:100px;overflow-y:auto;overflow-x:hidden;">
<input type="hidden" name="updatebasket" value="1" />
<table border="0" cellpadding="0" cellspacing="5" align="center" style="min-width:390px;border-collapse:separate!IMPORTANT;">
<tr><td colspan="5" style="text-align: left;"><strong style="font-size:14px;">Rotunda Vulsellum Forceps</strong></td></tr>  <tr>
        <td style="width: 50px;"><span style="color: #aaa;">Quote:</span></td>
        <td style="width: 50px;"><span style="color: #aaa;">Sample:</span></td>
        <td style="width: 350px;"><span style="color: #aaa;">Description:</span></td>

        <td style="width: 80px;"><span style="color: #aaa;">Pack size:</span></td>
        <td style="width: 40px;"><span style="color: #aaa;">Remove</span></td>
    </tr>

      <tr>
          <!-- <td style="padding:0px 2px;"><input type="textbox" class="textbox" value="3" name="54_59_131" /></td> -->
          <td align="center" valign="middle" style="background-color:#C3DCCD;"><input checked="checked" style="margin:5px;" type="checkbox" name="products-quote[]" value="835" /></td>
          <td align="center" valign="middle" style="background-color:#D3C4DF;"><input checked="checked" style="margin:5px;" type="checkbox" name="products-sample[]" value="835" /></td>

          <td style="font-size:11px;background-color:#efefef;"><p style="margin:0px 0px 5px 0px;padding:5px;"><span style="color:#663399;font-weight:bold;">VFR1001</span> Sterile Single-use Rotunda Vulsellum Forceps, double packed</p></td>
          <td style="font-size:11px;background-color:#efefef;"><p style="margin:0px 0px 5px 0px;padding:5px; font-weight:bold;">10 units</p></td>
          <td align="center"><b><a href="#" onclick="jQuery.facebox({ ajax: 'wishlist.php?basket=true&del=835' })">X</a></b></td>
      </tr>
        </table>
</div>
<script>
function quoteme() {
        $("#msgbox_body").html('<div id="contactform" style="margin-left:20px;margin-right:20px;margin-top:10px;"><form class="form" method="POST" action="http://www.dtrmedical.com"><table border="0"><tbody><tr><td><p class="name"><label for="name">Your Name<span style="color:red;">*</span>:</label></p></td><td>&nbsp;</td><td><input type="text" name="name" id="name" /></td></tr><tr><td><p class="hospital"><label for="hospital">Hospital/Institution:</label></p></td><td>&nbsp;</td><td><input type="text" name="hospital" id="hospital" /></td></tr><tr><td><p class="department"><label for="department">Department:</label></p></td><td>&nbsp;</td><td><input type="text" name="department" id="department" /></td></tr><tr><td><p class="email"><label for="email">E-mail<span style="color:red;">*</span>:</label></p></td><td>&nbsp;</td><td><input type="text" name="email" id="email" /></td></tr><tr><td><p class="tel"><label for="tel">Telephone<span style="color:red;">*</span>:</label></p></td><td>&nbsp;</td><td><input type="text" name="tel" id="tel" /></td></tr><tr><td colspan="3" align="center"><p class="submit"><input style=\"margin-left:27px;cursor:pointer;\" onclick="jQuery.facebox({ ajax: (\'wishlist.php?emailme=true&name=\' + this.form.name.value + \'&email=\' + this.form.email.value + \'&tel=\' + this.form.tel.value + \'&hospital=\' + this.form.hospital.value + \'&department=\' + this.form.department.value) }); return false;" type="submit" value="Send enquiry" name="submit" /></p></td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></form></div>');
        $("#msgbox_actions").html('<input onclick="jQuery.facebox({ ajax: \'wishlist.php?basket=true\' })" type="button" value="Back to Wishlist" />');
}

</script>
<div id="msgbox_actions"><input onclick="quoteme()" type="button" value="Request quote/sample" /> <a class="backtoproducts" href="http://www.dtrmedical.com/products" style="border-bottom-left-radius:5px 5px;border-bottom-right-radius:5px 5px;border-bottom-style:none;border-color:initial;border-left-style:none;border-right-style:none;border-top-left-radius:5px 5px;border-top-right-radius:5px 5px;border-top-style:none;border-width:initial;color:white;font-family:Arial;padding-bottom:2px;padding-left:6px;padding-right:6px;padding-top:2px;font-size:11px;">Back to products</a></div><!-- <input type="submit" value="Update" /> --><!-- <input onclick="jQuery.facebox({ ajax: 'wishlist.php?emailme=true' })" type="button" value="Save list for later" /> --> <!-- <input type="submit" value="Update Qty's" /> <input onclick="jQuery.facebox({ ajax: 'wishlist.php?basket=true&clearall=true' })" type="button" value="Clear list" /> --></div>
</form>

<div id="msgbox_actions">開頭的行中,在注釋之后的末尾是多余的</div>

這破壞了您的html,而IE則不知道該如何解決,但其他瀏覽器卻可以。

可能不是問題,但是當我單擊按鈕時,我的FireBug控制台會告訴我這一點:

“找不到NetworkError:404- http ://dtrmedical.com/xfade2.css”

由於某種原因而找不到您的CSS文件。

您的onclick事件未正確綁定到購物車div 我不確定為什么。 IE8可能無法正確解析復雜的HTML屬性。

而不是直接在HTML標記內部定義事件內聯,而是嘗試通過jQuery進行。 將以下代碼添加到$.ready正文的開頭。

$('#mybasket').click(function(){location.href='wishlist.php?basket=true';});

附帶說明,您應始終避免在HTML中定義任何事件處理,而應采用我上面描述的方法。 這樣做不僅意味着所有“動作”代碼都將放在一個地方,而且還為您提供了更好的跨瀏覽器支持(尤其是當您利用jQuery之類的庫時)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM