javascript operator Come copiare il testo della casella di avviso




javascript pdf (3)

Scrivo il percorso di un documento nella casella di avviso utilizzando il codice riportato di seguito.

var oArg = new Object();
oArg.Document = $(t).attr("path") + str + "/" + $(t).attr("name");
alert(oArg.Document);

Supponiamo che il messaggio sia: " documents/files/img/stack.jpg "

Voglio solo copiare questo testo con un pulsante. Per Chrome Ctrl + C va bene, ma per IE, Ctrl + C copia tutto nella casella di avviso.

Come posso copiare solo il messaggio usando un pulsante?

Ctrl + C funziona come di seguito:

  • Chrome - Funziona perfettamente.
  • Internet Explorer - Funziona, ma ottieni del testo in più. Viene inoltre copiata la didascalia e il testo del pulsante OK, insieme a una serie di trattini. Questo non è quasi mai quello che vuoi.
  • Firefox - Non funziona affatto È necessario selezionare il testo prima di poterlo copiare.

Quello che puoi fare è chiedere all'utente di inserire il testo e chiedergli di copiarlo. Come tale:

prompt("Copy to clipboard: Ctrl+C, Enter", oArg.Document);

Perché se fornisci un testo al prompt, viene automaticamente selezionato. Ti va bene?


Ho scoperto che, almeno in Chrome, il testo della casella di avviso è infatti selezionabile, quando il testo non contiene interruzioni di riga (ad esempio "\ n").

Non so perché questo è il caso, ma ho dovuto usare questo trucco prima per i prompt di selezione rapida. (puoi anche usare prompt("please press ctrl+c to copy the text below", "text to copy") , ma di solito sembra peggio)


Quando viene visualizzata la finestra di messaggio di avviso con il messaggio di testo, basta premere CTRL + C e il messaggio verrà copiato, quindi è possibile incollarlo ovunque si desideri, non è necessario scriverlo o utilizzare qualsiasi altro metodo per ottenere il testo.







javascript