2016-04-06 11 views
0

テキストボックスのテキスト内のすべての数値を見つけようとしていますが、何も起こっていません。コードは以下の通りです。私が間違っていることを特定するのに役立つことができますか?Jqueryハイライト機能が動作しません

model Notes.Models.NotesModel 
<html> 
    <head> 
     <title>Notes</title> 
     <style> 
      .highlight {background-color :yellow;} 
     </style> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> 
     <script type="text/javascript" language="javascript"> 

      function PIIHighlight() { 
           var regex = new RegExp("\D+", "gi"); 
           alert(document.getElementById("Notes").value.toString()); 
           return $("Notes").each(function() { document.getElementById("Notes").value.replace(regex,function (matched) { return "<span class=\"" + highlight + "\">" + matched + "</span>"; }); 
            }); 
           }; 
     </script> 
    </head> 

    <body> 
     <p> <input id="Notes" name="notes" type="text" spellcheck="true" class="txtbox" style="font-size:12pt;height:220px;width:600px;" /></p> 
     <p> <button onclick="PIIHighlight();">Check</button></p> 
    </body> 
</html> 

ありがとうございます!

+0

どのようなエラーが表示されますか?また、 '$(" Notes ")。eachはIDが一意でなければならないので意味がありません。したがって、あなたは一つの項目を反復しています。 jQueryを使用している場合は、* jQueryを使用し、 'document.getElementById(" Notes ")。value.toString()'を実行しないでください。 '$( '$ Notes').val()'を実行します。 – j08691

+0

そして、入力のテキストの周囲にスパンを置くことはできず、それらをHTMLとしてレンダリングすることはできません。また、$( "Notes") 'は' $( "#Notes") ' – j08691

+0

でなければなりません。コードがかなり混乱しているので、達成しようとしていることを教えてください。 JavaScriptとjQueryが混在しており、それぞれがID内で入力内にHTMLを返しますか?等々。あなたがしようとしていることを教えてください。 –

答えて

0

これは

model Notes.Models.NotesModel 
<html> 
<head> 
    <title>Notes</title> 
    <style> 
     .highlight {background-color :yellow;} 
    </style> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> 
    <script type="text/javascript" language="javascript"> 

     $(document).ready(function(){document.getElementById("Notes").focus();}); 
     function PIIHighlight() { 
          var values = document.getElementById("Notes").innerHTML.split(" "); 
          values.forEach(function(elem, idx){ 
      //$("values").each(function(){ 
           if(!isNaN(elem)) 
            { 
             values[idx] = "<span class='highlight'>" + elem + "</span>"; 
            } 
           }); 
          values = values.join(" "); 
          document.getElementById("Notes").innerHTML = values; 
          } 
    </script> 
</head> 

<body> 
    <p> <div id="Notes" contenteditable="true" name="notes" type="text" spellcheck="true" class="txtbox" style="font-size:12pt;height:220px;width:600px;padding:5px; border:1px solid blue;"></div></p> 
    <p> <button onclick="PIIHighlight();">Check</button></p> 
</body> 
</html> 

はそれがお役に立てば幸いです...それはあなたが私が推測する必要があるものに、より魅力的に見えるが、のcontentEditableプロパティに依存しています。

+0

それは魅力のように動作します。ありがとう、ディエゴ。 – user6166859

関連する問題