Javascript/Php. Stringa di testo a capo con alert

Monte95

Nuovo Utente
27 Mar 2017
12
0
1
29
Ciao a tutti, sapete dirmi come posso risolvere questo piccolo problema:

ho creato una funzione php che permette di troncare a tot. caratteri una stringa inserita all'interno di una casella di testo, e vengono generati dei puntini di sospensione:
ad esempio la stringa:
"blablablabla"
viene troncata in:
"bla..."
Al click dei puntini di sospensione, tale funzione richiama un' altra funzione javascript che mostra a video un alert contente la stringa originale.
Il problema è che quando inserisco nella casella di testo una stringa che mando a capo, i puntini di sospensione non sono più cliccabili e l'alert di conseguenza non funziona (ad esempio la stringa:
"blabla
blabla"
viene troncata in:
"bla..."
ma al click dei puntini di sospensione non parte la funzione javascript con l'alert.

Sapete dirmi come posso risolvere? Vi lascio quì di seguito la parte di codice interessata:

Codice:
<?php
function TagliaStringa($stringa, $max_char) {
    if(strlen($stringa)>$max_char) {
        $stringa_tagliata=substr($stringa, 0,$max_char);
        $cont = "<a onClick=\"link('$stringa')\" style=\"color:blue; text-decoration:blink; \">...</a>";
        return $stringa_tagliata.$cont;
    } else {
                   return $stringa;
                }
}
?>

Codice:
<script>
function link(a) {
    alert (a);                       
}
</script>

Codice:
<?php
$not      = TagliaStringa($note,45);
echo "<tr> <td> <label> Note: </label> <td> <label> $not </label>";
?>

Grazie mille.
 

lperino096

Nuovo Utente
17 Apr 2017
6
1
3
Al posto di:"return $stringa_tagliata.$cont;" io metterei semplicemente:"return $cont;"
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
aggiungi l'attributo href al tag a mi sembra che sia obbligatorio.
A me funziona
PHP:
<?php

function TagliaStringa($stringa, $max_char) {
    if (strlen($stringa) > $max_char) {
        $stringa_tagliata = substr($stringa, 0, $max_char);
        $cont = "<a href='#' onclick=\"link('$stringa');return false\" style=\"color:blue; text-decoration:blink; \">...</a>";
        return $stringa_tagliata . " " . $cont;
    } else {
        return $stringa;
    }
}
?>
<script>
    function link(a) {
        alert(a);
    }
</script>
<?php

$note = "blabla<br/>\\nblablablablablablablablablablablablablablablabl"
        . "<br/>\\nablablablablablablablablablabla";
$not = TagliaStringa($note, 45);
echo "<tr> <td> <label> Note: </label> <td> <label> $not </label>";
?>
 

Monte95

Nuovo Utente
27 Mar 2017
12
0
1
29
aggiungi l'attributo href al tag a mi sembra che sia obbligatorio.
A me funziona
PHP:
<?php

function TagliaStringa($stringa, $max_char) {
    if (strlen($stringa) > $max_char) {
        $stringa_tagliata = substr($stringa, 0, $max_char);
        $cont = "<a href='#' onclick=\"link('$stringa');return false\" style=\"color:blue; text-decoration:blink; \">...</a>";
        return $stringa_tagliata . " " . $cont;
    } else {
        return $stringa;
    }
}
?>
<script>
    function link(a) {
        alert(a);
    }
</script>
<?php

$note = "blabla<br/>\\nblablablablablablablablablablablablablablablabl"
        . "<br/>\\nablablablablablablablablablabla";
$not = TagliaStringa($note, 45);
echo "<tr> <td> <label> Note: </label> <td> <label> $not </label>";
?>


Adesso provo a fare le modifiche che mi hai detto, però probabilmente mi sono spiegato male, perchè la stringa viene inserita dall'utente finale tramite casella di testo (input type="text") e non da variabile, quindi l' a capo, verrà digitato premendo il classico tasto invio...
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
se noti nella mia stringa avevo messo il doppio backslah ( \\n)
prova cosi
PHP:
$cont = "<a href='#' onclick=\"link('" . str_replace(array("\n","\r"), array("\\n","\\r"), addslashes($stringa)) . "');return false;\" style=\"color:blue; text-decoration:blink; \">...</a>";
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
potresti provare così
PHP:
function TagliaStringa($stringa, $max_char) {
    if (strlen($stringa) > $max_char) {
        $stringa=nl2br($stringa, false);// trasformo \r in <br>
        $stringa=strtr($stringa , "<br>", " ");// cambio il <br> con spazio, o si può eliminare completamente
        $stringa_tagliata = substr($stringa, 0, $max_char);
        $cont = "<a href='#' onclick=\"link('$stringa');return false\" style=\"color:blue; text-decoration:blink; \">...</a>";
        return $stringa_tagliata . " " . $cont;
    } else {
        return $stringa;
    }
}
//......
 
  • Like
Reactions: Monte95

Monte95

Nuovo Utente
27 Mar 2017
12
0
1
29
ciao
potresti provare così
PHP:
function TagliaStringa($stringa, $max_char) {
    if (strlen($stringa) > $max_char) {
        $stringa=nl2br($stringa, false);// trasformo \r in <br>
        $stringa=strtr($stringa , "<br>", " ");// cambio il <br> con spazio, o si può eliminare completamente
        $stringa_tagliata = substr($stringa, 0, $max_char);
        $cont = "<a href='#' onclick=\"link('$stringa');return false\" style=\"color:blue; text-decoration:blink; \">...</a>";
        return $stringa_tagliata . " " . $cont;
    } else {
        return $stringa;
    }
}
//......

Ottimo, grazie mille funziona!! :)
 
Discussioni simili
Autore Titolo Forum Risposte Data
R Confrontare il dominio di una mail con una stringa contenente un dominio personalizzato, tutto ciò in php o javascript PHP 0
N Passare array da php a javascript PHP 5
I Eecuzione di javascript in ciclo foreach php. PHP 7
P Passaggio id php a javascript PHP 6
M Chiamare pagina php da javascript Javascript 8
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
D [Javascript] inserire uno script in un file php Javascript 6
pjtertdj Visualizzazione dati in php da mysql con funzione matematica in javascript PHP 1
W Integrare Javascript in PHP PHP 14
A [Javascript] Ajax, Jquery e PHP Javascript 1
E Caricare dati da DB MySql all'apertura pagina, meglio PHP o Javascript? PHP 1
L conferma prima di cancellare con javascript e php PHP 16
M Passare una varibile da PHP a Javascript PHP 2
D [Javascript] pulsanti per comandi shell con php e ajax Ajax 7
R [PHP] [Javascript] Link a DIV id di un' altra pagina PHP 4
T [PHP] [Javascript] Download e contatore PHP 3
S elementi statistici - Matrice e Gestione Array PHP o Javascript Javascript 0
M [Javascript] [PHP] aggiornare pagina ogni ora Javascript 2
BottyE Valore da javascript a php Javascript 2
A [Javascript] Select concatenata php csv Javascript 3
E PHP e Javascript PHP 2
I [PHP] [Javascript] login da smartphone a web PHP 3
A [Javascript] [PHP] Scroll refresh chat Javascript 2
A PROBLEMA INTERAZIONE PHP E JAVASCRIPT PHP 1
L [PHP] problema con upload e javascript (upload multiplo) Javascript 2
Mangiuz Variabili semplici PHP su Javascript Ajax 1
Valeee01 Javascript o php? Javascript 2
F Help array da javascript a php Javascript 2
P Javascript, ricevere responso da PHP. Come fare? Javascript 1
A Problema con getCurrentPosition e passaggio variabili da javascript a PHP Javascript 3
trattorino [Javascript] [PHP] due righe su sorgente html Javascript 3
G [Javascript] jQuery PHP MySql - inserire variabile nel DataBase Javascript 8
Metazoo Recuperare variabile php da javascript senza aggiornare pagina PHP 5
S [Javascript] variabili tra pagine php/ajax Javascript 1
R [Javascript] [HTML] [PHP] Javascript 2
giancadeejay LETTORE CODICI A BARRE SOLO IN PHP O JAVASCRIPT PHP 5
Gaetano1991h Passaggio da calendario php a javascript PHP 2
S Problema con script php-javascript PHP 2
P Chiamare pagina PHP con parametro da javascript Javascript 1
M problemi javascript/php Javascript 0
A Passare variabili da javascript a PHP PHP 8
B chat php/javascript che perde info nella navigazione del sito. PHP 0
E [Javascript] help me !!! array da php a java Javascript 9
M Far partire una funzione/codice php con javascript Javascript 1
B richiamare variabile javascript su pagina php Javascript 4
C Include PHP e Javascript PHP 4
P Verifica form solo con php senza javascript PHP 15
M invio variabile da javascript a php usando ajax Ajax 4
M [Retribuito] Web Developer (PHP/MySQL/Javascript) Offerte e Richieste di Lavoro e/o Collaborazione 0

Discussioni simili