将剪贴板中的多行文本粘贴到 PHP 形式的多行中
Paste from clipboard multiple lines of text into multiple lines in PHP form
我正在尝试找到一种方法将剪贴板中的项目粘贴到 php 表单中。 Essietnailly 不必逐行复制到表格中。
例如,如果我的剪贴板中有:
莎莉·苏萨兹
SSSusaze@gmail.com
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
}
谢谢!
要从剪贴板中获取字符串,请查看 this article。
然后:您需要找到一些方法来确定复制值的哪些部分进入哪种形式。我认为在换行符上拆分对上面的示例有效,但是如果它们的顺序不同怎么办?要检查这一点,您可能需要一个正则表达式。
然后,由于每个输入都有一个 ID,您可以 select 该元素并更改其值。一个可能的解决方案:
let infoArray = string.split('\n')
document.getElementById('c_name').value = infoArray[0]
我正在尝试找到一种方法将剪贴板中的项目粘贴到 php 表单中。 Essietnailly 不必逐行复制到表格中。
例如,如果我的剪贴板中有:
莎莉·苏萨兹
SSSusaze@gmail.com
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
}
谢谢!
要从剪贴板中获取字符串,请查看 this article。
然后:您需要找到一些方法来确定复制值的哪些部分进入哪种形式。我认为在换行符上拆分对上面的示例有效,但是如果它们的顺序不同怎么办?要检查这一点,您可能需要一个正则表达式。
然后,由于每个输入都有一个 ID,您可以 select 该元素并更改其值。一个可能的解决方案:
let infoArray = string.split('\n')
document.getElementById('c_name').value = infoArray[0]