2010-03-18 14 views
5

Sto utilizzando un gruppo di pulsanti di scelta rapida asp per elencare le risposte in un modulo. Ecco un esempio della struttura (so che il testo non ha senso, nudo con me).C'è un modo per disabilitare un'etichetta?

<asp:RadioButtonList id="Q2" runat="server"> 
    <asp:ListItem Text="Go to <a target='_blank' href='http:www.google.com'>Google</a>" Value="a"></asp:ListItem> 
    <asp:ListItem Text="Go to <a target='_blank' href='http:www.yahoo.com'>Yahoo</a>" Value="a"></asp:ListItem> 
</asp:RadioButtonList> 

Quindi voglio essere in grado di fare clic sui collegamenti e non avere il pulsante radio associato ad esso essere selezionato. In IE funziona bene, ma in Firefox il pulsante di opzione verrà selezionato quando clicco sul link. Non ho davvero bisogno dell'etichetta per selezionare effettivamente il pulsante di opzione corretto, quindi c'è un modo per disabilitarli in javascript o da qualche parte nel codice asp o C#?

+2

Che aspetto ha l'HTML risultante? Il browser non vede mai il codice ASP. – Pickle

risposta

3

E 'senza dubbio avvolgendoli in un elemento label, che si sta dando il comportamento di selezione. Potresti generare il codice manualmente, a mia scelta, oppure scartarli con javascript sul lato client.

<div> 
    <input type="radio" name="Q2" id="Q2_google" value="google" /> <a target="_blank" href="http://www.google.com">Google</a> 
    ... 
</div> 

o sul lato client

$(function() { 
    $('label:has(a)').each(function() { 
     var html = $(this).html(); 
     $(this).replaceWith($(html)); 
    }); 
}); 
+0

yeah jquery sembra la strada da percorrere con la maggior parte dei problemi di codifica che ho notato. – Mike

0

Prova questa:

<a target='_blank' href='http:www.google.com' click='return false;'>Google</a>" 
0

È possibile utilizzare Enabled = "false" nel livello di ListItem

Es: Google" Value = "a" Enabled = "false">

Problemi correlati