jQuery를 사용하여 HTML 페이지에서 선택한 텍스트 가져 오기

사용자 3352330

텍스트 영역 내에서 선택한 텍스트를 일부 처리에 사용하려는 간단한 HTML 페이지가 있습니다. jQuery 코드를 작성했지만 항상 빈 문자열을 선택 항목으로 얻습니다. 내 코드에서이 문제를 해결하도록 도와주세요.

HTML 코드는 다음과 같습니다.

<html>
<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script>
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/smoothness/jquery-ui.css" />
</head>
<body>
    <form action="#" id="formfirst">
        <textarea name="tafirst" rows="10" id="tafirst">Along came Polly ---- Reality Bites ---- Duplex ---- Walter Mitty </textarea>
        <br>
        <input type="text" id="txtfirst">
        <br>
        <input type="submit">
    </form>
</body>
<script type="text/javascript" src="js/verify.js"></script>
</html>

자바 스크립트 코드는 다음과 같습니다 : (verify.js)

function getSelectedText(){
    var t = '';
    if(window.getSelection){
        t = window.getSelection();
    }else if(document.getSelection){
        t = document.getSelection();
    }else if(document.selection){
        t = document.selection.createRange().text;
    }
    return t;
}

$(document).ready(function(){  
    //alert("HERE 1");
});
$(document).keypress(function(e){   
    if($('#tafirst').is(':focus')){
        if(e.altKey && e.which==97){
            alert(getSelectedText());
            e.preventDefault();
        }
    }
});

편집하다

나는 rangy 플러그인을 다운로드하여 js 폴더에 넣었습니다. 다음과 같이 HTML에 해당 플러그인을 포함했습니다.

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/smoothness/jquery-ui.css" />
<script type="text/javascript" src="js/rangy/rangy-1.2.3/rangy-core.js"></script>
</head>
<body>
<form action="#" id="formfirst">
<textarea name="tafirst" rows="10" id="tafirst">Along came Polly ---- Reality Bites ---- Duplex ---- Walter Mitty </textarea>
<br>
<input type="text" id="txtfirst">
<br>
<input type="submit">
</form>
</body>
<script type="text/javascript" src="js/verify.js"></script>
</html>

해당 수정 된 js 파일은 다음과 같습니다.

var range = rangy.createRange();

$(document).ready(function(){  
    alert(range);
    alert("HERE 1");    
});
$(document).keypress(function(e){   
    if($('#tafirst').is(':focus')){
        if(e.altKey && e.which==97){
            alert(getSelectedText());
            e.preventDefault();
        }
    }
});

그러나 경고 메시지도 표시하지 않습니다. rangy의 js 참조를 추가하는 동안 내가 잘못한 것이 있습니까?

팀 다운

텍스트 영역에서 선택한 텍스트를 가져 오려면 대부분의 브라우저에서 페이지의 기본 텍스트에서 선택한 텍스트를 가져 오는 것과 다른 API가 필요합니다. 텍스트 영역 selectionStartselectionEnd속성을 사용해야합니다 . 이 방법은 텍스트 입력에도 적용됩니다.

function getSelectedText(el) {
    var sel, range;
    if (typeof el.selectionStart == "number" && typeof el.selectionEnd == "number") {
        return el.value.slice(el.selectionStart, el.selectionEnd);
    } else if (
            (sel = document.selection) &&
            sel.type == "Text" &&
            (range = sel.createRange()).parentElement() == el) {
         return range.text;
    }
    return "";
}

예:

function getSelectedText(el) {
  var sel, range;
  if (typeof el.selectionStart == "number" && typeof el.selectionEnd == "number") {
    return el.value.slice(el.selectionStart, el.selectionEnd);
  } else if (
    (sel = document.selection) &&
    sel.type == "Text" &&
    (range = sel.createRange()).parentElement() == el) {
    return range.text;
  }
  return "";
}

window.onload = function() {
  document.getElementById("ta").onselect = function() {
    alert("Selected text: " + getSelectedText(this));
  };
};
<textarea id="ta" rows="5" cols="50">Please select some text in here</textarea>

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

XPATH를 사용하여 HTML 페이지에서 텍스트 및 Href 가져 오기 PHP

분류에서Dev

ActiveExplorer (ActiveInspector 아님)를 사용하여 Outlook 메일 항목에서 선택한 텍스트 가져 오기

분류에서Dev

자동 단축키를 사용하여 Visual Studio 2015에서 선택한 텍스트 가져 오기

분류에서Dev

HTML 텍스트에서 지정된 선택기를 사용하여 모든 클래스를 가져 오는 방법

분류에서Dev

BeautifulSoup을 사용하여 선택한 요소 옆에 텍스트 가져 오기

분류에서Dev

JSoup를 사용하여 HTML 태그에서 적절한 텍스트를 가져 오기

분류에서Dev

적절한 공백을 사용하여 HTML에서 텍스트 가져 오기

분류에서Dev

JQuery를 사용하여 SELECT의 선택된 옵션 텍스트 가져 오기

분류에서Dev

선택한 요소 jQuery 내에서 텍스트 가져 오기

분류에서Dev

jQuery를 사용하여 동일한 클래스 이름을 가진 요소에서 텍스트 가져 오기

분류에서Dev

간단한 Html dom 파서를 사용하여 특정 검색 텍스트로 링크 가져 오기

분류에서Dev

JXA를 사용하여 선택한 텍스트 / 강조 표시된 텍스트에서 문자열 가져 오기

분류에서Dev

MVC에서 jquery를 사용하여 도우미 길이에 대한 텍스트 상자 가져 오기

분류에서Dev

HTML에서 일반 텍스트를 가져 오지만 javascript를 사용하여 선택 태그에 제목 속성을 유지하고 싶습니다.

분류에서Dev

자바 스크립트를 사용하여 다른 도메인을 가리키는 iframe에서 선택한 텍스트 가져 오기

분류에서Dev

jQuery를 사용하여 항목에서만 선택한 값 가져 오기

분류에서Dev

자바 스크립트를 사용하여 devexpress 콤보 박스에서 선택한 항목 ID 가져 오기

분류에서Dev

자바 스크립트를 사용하여 선택한 텍스트 select2 가져 오기

분류에서Dev

cherrio 선택기를 사용하여 주석 요소 텍스트 가져 오기

분류에서Dev

유형 선택기를 사용하여 텍스트 영역의 ID를 가져 오지 못했습니다.

분류에서Dev

Spring Boot를 사용하여 체크 박스 목록에서 컨트롤러로 선택한 값 가져 오기

분류에서Dev

OnItemClickListener를 사용하여 항목에 대한 텍스트 가져 오기

분류에서Dev

코드 숨김의 HTML 선택에서 선택한 값 / 텍스트를 가져 오는 방법

분류에서Dev

작동하지 않는 자바 스크립트를 사용하여 Checkboxlist 선택한 항목 가져 오기

분류에서Dev

ajax 호출을 사용하여 javascript 함수에 PHP 변수를 전달하고 동일한 페이지에서 응답 텍스트 가져 오기

분류에서Dev

useEffect를 사용하여 페이지로드시 컨텍스트에서 데이터 가져 오기

분류에서Dev

페이지의 iframe 내에서 선택한 텍스트 가져 오기

분류에서Dev

Regex를 사용하여 URL에서 텍스트 가져 오기

분류에서Dev

MaxScript를 사용하여 지정된 골격에 대한 CAT 오브젝트 가져 오기 (선택)

Related 관련 기사

  1. 1

    XPATH를 사용하여 HTML 페이지에서 텍스트 및 Href 가져 오기 PHP

  2. 2

    ActiveExplorer (ActiveInspector 아님)를 사용하여 Outlook 메일 항목에서 선택한 텍스트 가져 오기

  3. 3

    자동 단축키를 사용하여 Visual Studio 2015에서 선택한 텍스트 가져 오기

  4. 4

    HTML 텍스트에서 지정된 선택기를 사용하여 모든 클래스를 가져 오는 방법

  5. 5

    BeautifulSoup을 사용하여 선택한 요소 옆에 텍스트 가져 오기

  6. 6

    JSoup를 사용하여 HTML 태그에서 적절한 텍스트를 가져 오기

  7. 7

    적절한 공백을 사용하여 HTML에서 텍스트 가져 오기

  8. 8

    JQuery를 사용하여 SELECT의 선택된 옵션 텍스트 가져 오기

  9. 9

    선택한 요소 jQuery 내에서 텍스트 가져 오기

  10. 10

    jQuery를 사용하여 동일한 클래스 이름을 가진 요소에서 텍스트 가져 오기

  11. 11

    간단한 Html dom 파서를 사용하여 특정 검색 텍스트로 링크 가져 오기

  12. 12

    JXA를 사용하여 선택한 텍스트 / 강조 표시된 텍스트에서 문자열 가져 오기

  13. 13

    MVC에서 jquery를 사용하여 도우미 길이에 대한 텍스트 상자 가져 오기

  14. 14

    HTML에서 일반 텍스트를 가져 오지만 javascript를 사용하여 선택 태그에 제목 속성을 유지하고 싶습니다.

  15. 15

    자바 스크립트를 사용하여 다른 도메인을 가리키는 iframe에서 선택한 텍스트 가져 오기

  16. 16

    jQuery를 사용하여 항목에서만 선택한 값 가져 오기

  17. 17

    자바 스크립트를 사용하여 devexpress 콤보 박스에서 선택한 항목 ID 가져 오기

  18. 18

    자바 스크립트를 사용하여 선택한 텍스트 select2 가져 오기

  19. 19

    cherrio 선택기를 사용하여 주석 요소 텍스트 가져 오기

  20. 20

    유형 선택기를 사용하여 텍스트 영역의 ID를 가져 오지 못했습니다.

  21. 21

    Spring Boot를 사용하여 체크 박스 목록에서 컨트롤러로 선택한 값 가져 오기

  22. 22

    OnItemClickListener를 사용하여 항목에 대한 텍스트 가져 오기

  23. 23

    코드 숨김의 HTML 선택에서 선택한 값 / 텍스트를 가져 오는 방법

  24. 24

    작동하지 않는 자바 스크립트를 사용하여 Checkboxlist 선택한 항목 가져 오기

  25. 25

    ajax 호출을 사용하여 javascript 함수에 PHP 변수를 전달하고 동일한 페이지에서 응답 텍스트 가져 오기

  26. 26

    useEffect를 사용하여 페이지로드시 컨텍스트에서 데이터 가져 오기

  27. 27

    페이지의 iframe 내에서 선택한 텍스트 가져 오기

  28. 28

    Regex를 사용하여 URL에서 텍스트 가져 오기

  29. 29

    MaxScript를 사용하여 지정된 골격에 대한 CAT 오브젝트 가져 오기 (선택)

뜨겁다태그

보관