【问题标题】:trying to create a simple text to ascii converter试图创建一个简单的文本到 ascii 转换器
【发布时间】:2012-04-20 22:55:33
【问题描述】:

我有一个 HTML 表单:

<html>
<body>
<form>
<textarea></textarea>
<input type="button" value="Submit" onclick="????"></input>
</form>
<script type="text/javascript">
var code, chr = 'here';
code = chr.charCodeAt(0);
document.write("The ASCII code of " + chr +" is "+code);
</script>
</body>
</html>

我正在尝试有一个文本区域,用户/我将在其中放置他的文本(单个字母)和一个他将单击以触发此事件的按钮。

现在的问题是如何使提交按钮将文本区域中的内容提交到:

var code, chr = '`here`';

如果需要其他数据,请告诉我。

【问题讨论】:

  • 1) 不要使用document.write。 2)遍历所有字符,以获取字符代码。 3) 将代码包含在函数中,并将该函数名称添加到onclick 属性中。
  • 我不明白你的第二点。
  • 您当前的代码只显示.charCodeAt( 0 )中第一个字符的字符代码(=index 0。如果使用循环,则可以看到字符代码整个输入文本。

标签: javascript forms events button


【解决方案1】:

试试这个,在 osx Safari 上制作:

<html>
<body>

<form>
ASCII:<br>
<textarea id="text" rows="8" cols="50"></textarea><br>
<input type="button" value="Convert" onclick="asciify()">
<br>
<hr>
DEC:<br>
<textarea id="output" rows="8" cols="50"></textarea>
</form>

<script type="text/javascript">
function asciify(){
      var ih = document.getElementById("text").value;
      var out = "";
      for(var i = 0; i < ih.length; i++){
         out=out.concat("<",ih.charAt(i).charCodeAt(0),">");
      }
  document.getElementById('output').innerHTML = out;
}
</script>


</body>
</html>

【讨论】:

    【解决方案2】:

    如果我了解您要查找的内容,您需要一个 ascii 转换输入的函数,并且您需要从按钮调用它。

    我建议使用类似以下的方法,因为来自按钮的调用都是相对的,您可以在一个页面上有 15 个这样的表单,它们都可以工作,而且您的实际翻译方法保持简单和离散。

    虽然有了这么简单的东西,你可以直接将其放入内联。

    <html>
    <body>
    <script type="text/javascript">
    function asciify(txt) {
        return = txt.charCodeAt(0);
    }
    </script>
    <form>
    <textarea name="txt_input"></textarea>
    <input type="button" value="Submit" onclick="this.form.txt_output.value = asciify(this.form.txt_input.value)"></input>
    <textarea name="txt_output"></textarea>
    </form>
    </body>
    </html>
    

    【讨论】:

      【解决方案3】:
      <html>
      <body>
      <form>
      <textarea id="text"></textarea>
      <input type="button" value="Submit" id="subm"/>
      <div id="out"></div>
      </form>
      <script type="text/javascript">
      document.getElementById("subm").addEventListener("click", asciify, false);
      function asciify(){
          var ih = document.getElementById("text").innerHTML;
          var out = [];
          for(var i = 0; i < ih.length; i++){
              out.push(ih.charCodeAt(i));
          }
          document.getElementById("out").innerHTML = out.join(",")
      }
      </script>
      </body>
      </html>
      

      这使用javascript添加一个onclick处理程序,并且支持多个字符

      【讨论】:

        猜你喜欢
        • 2011-03-31
        • 2014-11-18
        • 2023-04-06
        • 1970-01-01
        • 1970-01-01
        • 2016-11-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多