2010-09-07 9 views
9

Je souhaite que l'intervalle soit entièrement cliquable.Comment rendre un span entièrement cliquable?

<span><a href="#" title="Remove" id="159" class="remove">159</a><input type="hidden" name="t[1][p][]" value="159"></span> 

L'image associée à l'image de fond est flottante vers la droite. L'image est un signe plus qui servira essentiellement à indiquer que l'enregistrement peut être déplacé vers un autre div.

Plutôt que d'avoir un lien et une image à la fois cliquable, est-il possible d'avoir simplement le tout acte de portée comme une ancre?

Le clic doit être détecté par jQuery.

+0

N'avez-vous pas déjà de code jQuery? – RobertPitt

Répondre

6

Faire l'ancre niveau de bloc (c.-à-d. affichage: bloc) et il remplira l'étendue, en supposant que votre span lui-même a une taille définie (sinon il va juste envelopper l'ancre et ils seront tous deux de la même taille)

3

$("a.remove").closest("span").click(function(){alert('Test');}); fera.

D'ailleurs, ce n'est pas une bonne idée de définir l'identifiant à une seule valeur numérique. (Vous avez le id de l'élément a défini sur "159"). Cela rend votre balise invalide, comme un identifiant doit commencer par un caractère latin suivi de caractères, des chiffres, des tirets, etc.

9

HTML:

<span id="myspan">....</span> 

Script:

$("#myspan").click(function(){ 
    alert('I got a click'); 
}); 
+0

Hahaha. Simple et direct. Je l'aime :) –

+0

dans cette fonction si vous ajoutez après la première alerte '$ ('a', this) .click()' il va cliquer sur le lien a, mais alors il cliquera à nouveau automatiquement sur la plage, si vous cliquez le href directement il cliquera la durée aussi .. – RobertPitt

+0

Cela ne fonctionne pas dans les cas comme la question. Reformulant OP plus simplement: ' durée span