javascript
  • jquery
  • css
  • ajax
  • 2013-03-12 65 views 0 likes 
    0

    試圖讓這個工作。而不是顯示正常的收音機,或用圖像替換收音機。我想用一個div替換它,我可以打扮成一個按鈕,並將鼠標懸停在課程變更上,並點擊課程變更。而且還點擊隱藏的廣播被選中。而且還要求標籤(標籤參考文本顯示如下.co.uk .com .net等)位於div /按鈕內。或者能夠向div按鈕添加文本。這可能嗎?收音機隱藏。改爲顯示div類。在點擊選擇鏈接無線電

    $(function() { 
        $("input [name='domain_ext']").each(function() { 
         if ($(this).prop('checked')) { 
          $(this).hide(); 
          $(this).after($("< class='radioButtonOff' />")); 
         } else { 
          $(this).hide(); 
          $(this).after($("<class='radioButtonOn' />")); 
         } 
        }); 
    
        $("input.radio").click(function() { 
         if($(this).attr('src') == 'radiobuttonOn') { 
          $(this).attr('src', 'radiobuttonOff'); 
          $(this).prev().attr('checked', 'false'); 
         } else { // its not checked, so check it 
          $(this).attr('src', 'radioButtonOn'); 
          $(this).prev().attr('checked', 'true'); 
         } 
        }); 
    }); 
    

    HTML

    <table class="domain_ext_ribbon"> 
        <tr> 
        <td><label> 
         <input type="radio" name="domain_ext" value="all" /> 
         All</label></td> 
        <td><label> 
         <input type="radio" name="domain_ext" value=".co.uk" /> 
         .co.uk</label></td> 
        <td><label> 
         <input type="radio" name="domain_ext" value=".com" /> 
         .com</label></td> 
        </tr> 
        <tr> 
        <td><label> 
         <input type="radio" name="domain_ext" value=".net" /> 
         .net</label></td> 
        <td><label> 
         <input type="radio" name="domain_ext" value=".org" /> 
         .net</label></td> 
        <td><label> 
         <input type="radio" name="domain_ext" value=".biz" /> 
         .net</label></td> 
        </tr> 
    </table> 
    

    CSS

    .radioButtonOff { width: 60px; height: 20px; background: #000000;} 
    .radioButtonHover { width: 60px; height: 20px; background: #666666;} 
    .radioButtonOn { width: 60px; height: 20px; background: #999999;} 
    
    +0

    請不要在回答者指出來之後編輯代碼錯誤。 – 2013-03-12 01:27:46

    +0

    你正在申請,如果/ else語句基於類,但類不應用,直到之後,如果else語句。試圖插入一個div來替換默認單選按鈕的 – Scott 2013-03-12 01:28:34

    +0

    。 – alwayslearning 2013-03-12 01:29:02

    回答

    1

    它看起來像你在你的選擇中的錯誤;您錯過了屬性過濾器周圍的左大括號。所以

    $("input name='domain_ext']") 
    

    應該

    $("input [name='domain_ext']") 
    

    而且,除非你使用jQuery的特別版1.6,您的代碼應該工作,但是,

    if ($(this).prop('checked')) 
    

    是首選檢查單選按鈕是否被檢查的方式,而不是

    if ($(this).attr('checked')) 
    

    查看this link瞭解更多信息。


    當然這

    $(this).after($("<class='radioButtonOn' />")); 
    

    ,並沒有真正多大意義可言。我認爲你的意思是:

    $(this).after($("<div class='radioButtonOff' />")); 
    
    +0

    謝謝;)認爲我需要添加一個模糊函數的懸停狀態,而不是在CSS做懸停? – alwayslearning 2013-03-12 01:26:33

    +0

    是啊開始認爲那是錯的地方。試圖讓div作爲一個按鈕來取代默認的收音機。並獲取文本到div按鈕。 – alwayslearning 2013-03-12 01:32:57

    +0

    仍然沒有看到如何一起拉這個。有點棘手 – alwayslearning 2013-03-12 01:37:58

    相關問題