2016-05-25 62 views
0

我使用下面的代碼,以顯示 「個人」 和隱藏 「總線」,反之亦然爲什麼按下不同的單選按鈕時,我的單選按鈕事件會觸發?

JQuery的:

$('input[name="perorbus"]').click(function() { 
      if ($(this).attr('id') == 'bus') { 
       $('#showbus').show(); 
       $('#showper').hide(); 
      } 
      if ($(this).attr('id') == 'pers') { 
       $('#showper').show(); 
       $('#showbus').hide();    
      } 

     }); 

HTML:

<fieldset id="perorbus"> 
     <label style="font-size: large;">Personal Or Business?</label> 
     <br/> 
    <input type="radio" class="PerOrBus" value="pers" id="pers" name="perorbus"/> 
    <label style="font-size: medium;">Personal Customer</label> 
    <input type="radio" class="PerOrBus" id="bus" value="bus" name="perorbus"/> 
    <label style="font-size: medium;">Business Customer?</label> 
     <br/> 
    </fieldset> 


<table id="showper"> 
    <tr> 
    <td>Show Personal</td> 
    </table> 

    <table id="showbus"> 
    <tr> 
    <td>Show Business</td> 
    </table> 

任何其他無線電按鈕,我把在頁面上觸發這一點。他們都給出一個name屬性如下所示:

<fieldset id="CACCc"> 
    <input type="radio" id="1b" class="2b" value="4b" name="1b"/> Yes 
    <br/> 
    <input type="radio" id="id12" class="4class" value="4c" name="id12"/> No ​ 
    <br/></fieldset> 

不過,我必須在文檔準備與類似下面的jQuery分配名稱:

 document.getElementById("1b").setAttribute('name', '1b'); 
    document.getElementById("id12").setAttribute('name', 'id12'); 

這是由於我被限於不使用名稱的HTML(長的故事)屬性

任何幫助將是巨大的,感謝

+0

你可以在小提琴上重現這一個嗎? (https://jsfiddle.net/k7knjypu/工作正常) – Florian

+0

是真的,必須是其他地方的問題 – Stacker

回答

0

嘗試通過單選按鈕,然後單選按鈕的名稱去。也使用更改觸發器。順便說一下,您的字段集具有相同的名稱。這可能是一個問題。

$(document).ready(function() { 
    // Update names 
    $('input[type=radio][name=perorbus]').change(function() { 
     if (this.id == 'bus') { 
      $('#showbus').show(); 
      $('#showper').hide(); 
     } 
     if (this.id == 'pers') { 
      $('#showper').show(); 
      $('#showbus').hide();    
     } 
    }); 
}); 
+0

不幸的是,它仍然隱藏任何一個。基本上如果Pers或bus被選中,我選擇另一個單選按鈕,無論選擇什麼,它都會最小化 – Stacker

+0

它可能在我的代碼中,但我在這裏忍受的太多了 – Stacker

+0

@Stacker只是要知道所有的名字。你有重疊的地方。 –

0

我的問題的答案具體是,這是一個Sharepoint緩存問題。因爲我無法刪除緩存,所以我只是重命名並重新命名了所有內容並使其工作。

這不會解決其他人的問題,可能但其他答案應該。

相關問題