У меня есть классическая страница ASP, которая извлекает записи из БД и отображает результаты в таблице.В одном из столбцов отображаются электронные письма в зависимости от отображаемого набора записей.Я хотел бы добавить кнопку Копировать в буфер обмена на странице, которая копирует все электронные письма в этом столбце.
Вот текущий скрипт для циклического прохождения набора записей.
RESPONSE.WRITE "<tr>"& vbCrlf
RESPONSE.WRITE "<td>FULL NAME</td>"& vbCrlf
RESPONSE.WRITE "<td>EMAIL</td>"& vbCrlf
RESPONSE.WRITE "</tr>"& vbCrlf
IF NOT rsMembers.EOF AND NOT rsMembers.BOF THEN
DO WHILE NOT rsMembers.EOF
RESPONSE.WRITE "<tr>"& vbCrlf
RESPONSE.WRITE "<td>" & rsMembers("First Name") & " " & rsMembers("Last Name") & "</td>"& vbCrlf
RESPONSE.WRITE "<td><a href='mailto:"&rsMembers("Email")&"'>" & rsMembers("Email") & "</a></td>"& vbCrlf
RESPONSE.WRITE "</tr>"& vbCrlf
rsMembers.MOVENEXT
LOOP
END IF
Моя оригинальная попытка заключалась в том, чтобы включить скрытое поле в цикле для каждой записи электронной почты и сделать идентификатор этого поля уникальным, добавив к нему число или что-то еще.А затем в цикле javascript через все возможные идентификаторы.
RESPONSE.WRITE "<tr>"& vbCrlf
RESPONSE.WRITE "<td>FULL NAME</td>"& vbCrlf
RESPONSE.WRITE "<td>EMAIL</td>"& vbCrlf
RESPONSE.WRITE "</tr>"& vbCrlf
IF NOT rsMembers.EOF AND NOT rsMembers.BOF THEN
DO WHILE NOT rsMembers.EOF
RESPONSE.WRITE "<tr>"& vbCrlf
RESPONSE.WRITE "<td>" & rsMembers("First Name") & " " & rsMembers("Last Name") & "</td>"& vbCrlf
RESPONSE.WRITE "<td><a href='mailto:"&rsMembers("Email")&"'>" & rsMembers("Email") & "</a><input type='hidden' value='"& rsMembers("Email") &"' id='myInput'></td>"& vbCrlf
RESPONSE.WRITE "</tr>"& vbCrlf
rsMembers.MOVENEXT
LOOP
END IF
Java
<script>
function myFunction() {
/* Get the text field */
var copyText = document.getElementById("myInput");
/* Select the text field */
copyText.select();
/* Copy the text inside the text field */
document.execCommand("copy");
/* Alert the copied text */
alert("Copied the text: " + copyText.value);
</script>
Затем добавьте кнопку для копирования:
<button onclick="myFunction()">Copy text</button>
Не уверен, есть ли способ поместить все результаты электронной почты в имассив, а затем записать их в одно скрытое поле.Например
<input type="hidden" value="DB Array of emails with a comma between each" id="myInput">
Пример: введите описание изображения здесь