2011-08-25 231 views
0

我正在創建一個LI,並使用JQUERY代碼將它附加到UL。IE瀏覽器問題

 listHtml = "<li id='ordli' whereaboutid='' action='Insert' onthefly='True' class='myDragClass'>" + 
    "<div class='orderBox'>" + 
    "<span><a href='#' id='114' title='delete' class='itemOrderDelete'>X</a></span></div>" + 
    "</li>"; 

$(this).append(listHtml); 

的問題是,IE呈現HREF與頁面的URL,而不是#。

In Firefox 

<a href='#' id='114' title='delete' class='itemOrderDelete'>X</a> 

This is correct 

But in IE (Compatibility mode) 

<a href='http://localhost:1224/pages/index.aspx#' id='114' title='delete' class='itemOrderDelete'>X</a> 

This is incorrect 

任何想法爲什麼URL被附加到HREF。如何消除它?提前致謝。

+3

這是打破了你的東西?我相信'#'和'(url)#'對瀏覽器意味着同樣的東西。 –

+0

不要使用數字作爲你的元素的ID屬性 – Joe

+0

由於某些原因,我需要保持它爲'#',我有一些js登錄。 – balaG

回答

0

是的,這恰好IE9在IE7的兼容性,你可以試試這個修復:

測試

HTML:

    JS

    var listHtml = $('<li id="ordli" whereaboutid="" action="Insert" onthefly="True" class="myDragClass"> \ 
        <div class="orderBox"> \ 
        <span><a href="" id="114" title="delete" class="itemOrderDelete">X</a></span></div> \ 
        </li>'); 
    
    $(listHtml).find('a').attr('href', '#'); 
    
    $('ul').append(listHtml); 
    
    alert($('ul').html()); 
    

    test

    +0

    謝謝..反而ZenMaster給了一個技巧,它的工作。檢查評論。 – balaG