javascript — вставка из буфера обмена нескольких строк текста в несколько строк в форме PHP

Я пытаюсь найти способ вставить элементы из клипа в форму php. Особенно не нужно копировать построчно в форму.

Так, например, если в моем буфере обмена у меня есть:

Салли Сузазе
[email protected]
304-506-7054

И хотите иметь возможность вставить эту информацию в эту форму за один шаг:

введите описание изображения здесь

Что я делаю? Я знаю, что достаточно просто создать кнопку, которая копирует содержимое из формы, но в идеале я хотел бы иметь кнопку, которая вставляет буфер обмена в форму (как я уже говорил выше)

Это пример кнопки, которая копирует: https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_copy_clipboard2

А вот фрагмент кода формы (изображение выше)

if (in_array((int) $tpl['option_arr']['o_bf_include_name'], array(2,3)))
{
?>
<p>
<label class="title"><?php __('lblBookingName'); ?></label>
<span class="inline-block">
<input type="text" name="c_name" id="c_name" class="pj-form-field w400<?php echo $tpl['option_arr']['o_bf_include_name'] == 3 ? ' required' : NULL; ?>" />
</span>
</p>
<?php
}
if (in_array((int) $tpl['option_arr']['o_bf_include_email'], array(2,3)))
{
?>
<p>
<label class="title"><?php __('lblBookingEmail'); ?></label>
<span class="inline-block">
<input type="text" name="c_email" id="c_email" class="pj-form-field w400<?php echo $tpl['option_arr']['o_bf_include_email'] == 3 ? ' required' : NULL; ?>" />
</span>
</p>
<?php
}
if (in_array((int) $tpl['option_arr']['o_bf_include_phone'], array(2,3)))
{
?>
<p>
<label class="title"><?php __('lblBookingPhone'); ?></label>
<span class="inline-block">
<input type="text" name="c_phone" id="c_phone" class="pj-form-field w400<?php echo $tpl['option_arr']['o_bf_include_phone'] == 3 ? ' required' : NULL; ?>" />
</span>
</p>
<?php
}
if (in_array((int) $tpl['option_arr']['o_bf_include_notes'], array(2,3)))
{
?>
<p>
<label class="title"><?php __('lblBookingNotes'); ?></label>
<span class="inline-block">
<textarea name="c_notes" id="c_notes" class="pj-form-field w500 h120<?php echo $tpl['option_arr']['o_bf_include_notes'] == 3 ? ' required' : NULL; ?>"></textarea>
</span>
</p>
<?php
}

Спасибо!

0

Решение

Чтобы получить строку из буфера обмена, проверьте Эта статья.

Затем: вам нужно найти способ определить, какие части скопированного значения попадают в какую форму. Я думаю, что разделение на новую строку будет работать для примера выше, но что если они в другом порядке? Чтобы проверить это, вам, вероятно, понадобится регулярное выражение.

Затем, поскольку каждый вход имеет идентификатор, вы можете выбрать этот элемент и изменить его значение. Возможное решение:

let infoArray = string.split('\n')
document.getElementById('c_name').value = infoArray[0]
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]