Salve. Ciome posso ottenere in javascript il testo che l'utente ha selezionato in una textarea? Ho cercato su google e anche sul forum, ma non ho trovato nulla che facesse al caso mio
Salve. Ciome posso ottenere in javascript il testo che l'utente ha selezionato in una textarea? Ho cercato su google e anche sul forum, ma non ho trovato nulla che facesse al caso mio
Il parametro obj passato alla funzione č un riferimento all’oggetto textarea di cui si vuole ottenere il testo selezionato. La funzione restituisce semplicemente una stringa contenente il testo.Codice:function get_selected_text(obj) { if (document.selection) { // Internet Explorer obj.focus(); return document.selection.createRange().text; } else if (obj.selectionStart || obj.selectionStart == '0') { // Others return obj.value.substring(obj.selectionStart, obj.selectionEnd); } else { return obj.value; // Fallback } }
scusate, avrei un altra domanda inerente al discorso:
se volessi ceh una volta selezionato il testo il javascript mi prendesse il testo sottolineato e lo rimpiazzasse con due tag prima e dopo e il testo sottolineato in centro? perche deve tornare tutto il testo, ma solo quella parte ev'essere modificata e la selezione potrebbe essere al centro o chissa dove nel testo... grazie mille della risposta...ciaoo...
Per la spiegazione guardate qui: http://saitfainder.altervista.org/webnology/?p=57Codice:function textarea_wrap_text(obj, str_pre, str_post) { if (document.selection) { // Internet Explorer obj.focus(); sel = document.selection.createRange(); sel.text = str_pre + sel.text + str_post; } else if (obj.selectionStart || obj.selectionStart == '0') { // Others var pos_1 = obj.selectionStart; var pos_2 = obj.selectionEnd; obj.value = obj.value.substring(0, pos_1) + str_pre + obj.value.substring(pos_1, pos_2) + str_post + obj.value.substring(pos_2, obj.value.length); } else { // Fallback obj.value += str_pre + str_post; } }
ho messo il tuo codice nel file bbcode.js che richiamo nella pagina, ora per richiamare la funzione faccio qualcosa del genere:
per?o nn funziona... dove sbglio?? grazie...ciaooo...Codice PHP:
// altro
$bbcode .= '<a href="#" onclick="BBcode(\'textarea\', \''.$tag[0].'\', \''.$tag[1].'\')"><img src="styles/'.$this->theme_path.'/imageset/icons/bbcode/'.$code[4].'" border="0"></a> ';
//altro
EDIT: risolto con un pizzico di iniziativa:
Codice HTML:function BBcode(obj, str_pre, str_post) { var obj = document.getElementById(obj); if (document.selection) { // Internet Explorer obj.focus(); sel = document.selection.createRange(); sel.text = str_pre + sel.text + str_post; } else if (obj.selectionStart || obj.selectionStart == '0') { // Others var pos_1 = obj.selectionStart; var pos_2 = obj.selectionEnd; obj.value = obj.value.substring(0, pos_1) + str_pre + obj.value.substring(pos_1, pos_2) + str_post + obj.value.substring(pos_2, obj.value.length); } else { // Fallback obj.value += str_pre + str_post; } }
Ultima modifica di bluster : 24-06-2009 alle ore 11.07.21
Grazie mille sait