0

我在此处使用超链接,并且在超链接的单击事件中,我想使用 java 脚本在文本框中复制选定的文本(我使用鼠标指针或突出显示的文本选择)我只想在文本框中选择文本我从鼠标指针中选择或突出显示。我的 java 脚本正在运行,但它复制了 div 的全文

<li><a href="#" onclick="JAVASCRIPT:return Edit();">Candidate Name</a> </li>
<script type="text/javascript">
    function Edit() {
        alert("hiii");
        document.getElementById('<%=txtbox.ClientID%>').value = document.getElementById('<%=divtext.ClientID%>').innerHTML;
         return true;
    }
</script>
<div>
    <asp:TextBox ID="txtbox" runat="server"></asp:TextBox>
</div>
<div id="divtext" runat="server">
    TCS Infosys Wipro HP HCL Microsoft Facebook Facebook Facebook 
</div>
4

1 回答 1

0

尝试这个

<!DOCTYPE html>
<html>
<script type="text/javascript">
 function getSelectionText(divID) {
    var selectedText = "";
    if (window.getSelection) {
        var sel = window.getSelection();
        var div = document.getElementById(divID);

        if (sel.rangeCount) {
            // Get the selected range
            var range = sel.getRangeAt(0);

            // Check that the selection is wholly contained within the div text
            if (range.commonAncestorContainer == div.firstChild) {
                var selectedText = range.toString();
               }
          }
       }
     return selectedText;
   }

   function Edit() {
        var selectedText = getSelectionText("divtext")
        document.getElementById("txtbox").value =  selectedText;
        return true;
   }
 </script>
<body>
        <li><a href="#" onclick="JAVASCRIPT:return Edit();">Candidate Name</a> </li>
         <div>
            <input type="text" ID="txtbox" />
        </div>
        <div id="divtext">
            TCS Infosys Wipro HP HCL Microsoft Facebook Facebook Facebook 
        </div>
 </body>

于 2013-05-08T10:44:10.720 回答