2016-04-15 12 views
3

I 2 SpannweitenWie eine contentEditable Spanne auf glyphicon klicken

<span contentEditable=true class="editspan"></span> 
<span class="pencilspan glyphicon glyphicon-pencil pull-right"></span> 

und eine js Funktion markieren

$(document).on('click', '.pencilspan', function() { 
    console.log("clicked pencil"); 
}); 

Was ich will, wenn ich pencilspan der contentEditable Bereich von editspan erhalten sollten klicken hervorgehoben (Eingabefeld sollte sichtbar sein). Wie kann ich das erreichen?

+0

Werfen Sie einen Blick auf die Funktion addClass jQuery. – Astaroth

+0

zeigen Sie den HTML-Code, wo Sie Eingabe verwendet –

+0

Ich möchte nicht das Eingabe-Tag verwenden, um ein Eingabefeld zu Editspan hinzufügen. Ich habe bereits das contentEditable = true-Flag, das mir automatisch ein Eingabefeld gibt. Ich möchte nur die contentEditable Areaa hervorheben oder einen Klick auf den Bearbeitungsbereich erzwingen. Ich habe versucht, '$ ('. Editspan'). Click(); 'innerhalb meiner Pencilspan onlick Funktion, aber es hat nicht funktioniert. – aaj

Antwort

1

Sie sollten focus() Methode versuchen:

$(document).on('click', '.pencilspan', function() { 
    $(this).siblings('.editspan').focus(); 
}); 

Für leere Spanne Ausgabe können Sie folgen dieser link

+0

Ich möchte das Eingabe-Tag nicht verwenden, um ein Eingabefeld für Editspan hinzuzufügen. Ich habe bereits das contentEditable = true-Flag, das mir automatisch ein Eingabefeld gibt. Ich möchte nur die contentEditable Areaa hervorheben oder einen Klick auf den Bearbeitungsbereich erzwingen. Ich habe versucht, '$ ('. Editspan'). Click(); 'innerhalb meiner Pencilspan onlick Funktion, aber es hat nicht funktioniert. – aaj

+0

überprüfen Sie die bearbeitete Antwort .. – rajthakur

+0

Vielen Dank! Dies ist fast funktioniert das einzige Problem ist, wenn ich keinen Text innerhalb der Spannweite dies funktioniert nicht und wenn ich etwas innerhalb der Spannweite habe funktioniert es. ' Text' funktioniert aber '' funktioniert nicht – aaj

0

Bitte versuchen Sie dies könnte Ihnen helfen, wenn Sie für Toggle suchen:

<!DOCTYPE html> 
<html> 
<head> 
<style> 
.editInput{ 
display:none; 
} 
</style> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 

</head> 
<body> 
<span contentEditable=true class="editspan"> 
<input type = 'text' value ='' class='editInput' /> 
</span> 
<span class="pencilspan glyphicon glyphicon-pencil pull-right">button</span> 
<script> 
$(document).ready(function(){ 
    $(document).on('click', '.pencilspan', function() { 
    // var editInput = "<input type = 'text' value ='' />"; 
    $('.editspan .editInput').toggle(); 

}); 
}); 
</script> 
</body> 
</html> 
+0

Ich möchte das Eingabe-Tag nicht verwenden, um ein Eingabefeld für editspan hinzuzufügen. Ich habe bereits das contentEditable = true-Flag, das mir automatisch ein Eingabefeld gibt. Ich möchte nur die contentEditable Areaa hervorheben oder einen Klick auf den Bearbeitungsbereich erzwingen. Ich habe versucht, '$ ('. Editspan'). Click(); 'innerhalb meiner Pencilspan onlick Funktion, aber es hat nicht funktioniert. – aaj

+0

@lovesoftlayeraj: bitte versuchen Sie dieses $ (document) .auf ('klicken', '.pencilspan', function() { $() konzentrieren(); 'editspan Eingang.'.}); –

Verwandte Themen