Petronius Asked: 2023-08-18 00:12:32 +0800 CST2023-08-18 00:12:32 +0800 CST 2023-08-18 00:12:32 +0800 CST asp TextBox with TextMode="Date" 如何复制日期? 772 是否可以将日期作为字符串复制到剪贴板?当我们使用 DevExpress 文本框时,我们能够突出显示整个日期字段并复制。现在我们将其更改为 asp:TextBox (TextMode="Date") 后,我们不能这样做。右键单击上下文菜单没有任何复制菜单,左键单击仅显示日历。 任何实现这一目标的建议都将受到赞赏。 asp.net 1 个回答 Voted Best Answer Albert D. Kallal 2023-08-18T10:12:10+08:002023-08-18T10:12:10+08:00 好吧,就说这个文本框,在文本框旁边,我们有一个按钮。 <asp:TextBox ID="TextBox1" runat="server" TextMode="date" ClientIDMode="Static"> </asp:TextBox> <button id="mycopy" type="button" onclick="copyt();return false" >Copy</button> <script> function copyt() { console.log('start') var mytext = document.querySelector('#TextBox1').value navigator.clipboard.writeText(mytext) alert("you can now ctrl-v -- copy text = " + mytext) } </script> 因此,上面的代码会将文本框的内容“复制”到粘贴缓冲区中。 当然,我想如果你有很棒的字体,那么可以有一个像这样的按钮: <asp:TextBox ID="TextBox1" runat="server" TextMode="date" ClientIDMode="Static"> </asp:TextBox> <button id="mycopy" type="button" onclick="copyt();return false" ><span class="fa fa-clipboard" aria-hidden="true"></span></button> <script> function copyt() { console.log('start') var mytext = document.querySelector('#TextBox1').value navigator.clipboard.writeText(mytext) alert("text = " + mytext) } 现在的结果是这样的: 公平地说,人们可能应该删除上面的“警报”命令。 正如我所建议的,另一个想法是自定义右键单击上下文菜单。然而,这将需要大量的代码,并且最好采用一些 JavaScript 库来实现此目的。我确实“查找”了一些示例,但是自定义上下文菜单的生成代码并不那么干净。因此,保持简单,上述看起来是获得所需结果的最少努力。
好吧,就说这个文本框,在文本框旁边,我们有一个按钮。
因此,上面的代码会将文本框的内容“复制”到粘贴缓冲区中。
当然,我想如果你有很棒的字体,那么可以有一个像这样的按钮:
现在的结果是这样的:
公平地说,人们可能应该删除上面的“警报”命令。
正如我所建议的,另一个想法是自定义右键单击上下文菜单。然而,这将需要大量的代码,并且最好采用一些 JavaScript 库来实现此目的。我确实“查找”了一些示例,但是自定义上下文菜单的生成代码并不那么干净。因此,保持简单,上述看起来是获得所需结果的最少努力。