如何在javascript中反转字符串?

如何在javascript中反转字符串?,javascript,function,visual-studio-2013,visual-studio-debugging,onsubmit,Javascript,Function,Visual Studio 2013,Visual Studio Debugging,Onsubmit,我试图通过VisualStudio2013中的.html文件学习JavaScript 我知道有更简单的方法在JavaScript中反转字符串,但我的主要目标是理解html和JavaScript之间的交互,以提供这样的解决方案 此外,IDE必须是Visual Studio,因为最终我希望使用.aspx文件编写相同的逻辑 因此,对于我最初的学习尝试,我尝试实现以下逻辑: 从表单的输入标记获取字符串 提交表单,导致脚本submit()运行 脚本反转字符串,然后 在同一输入标记中显示反向字符串,该标记

我试图通过VisualStudio2013中的.html文件学习JavaScript

我知道有更简单的方法在JavaScript中反转字符串,但我的主要目标是理解html和JavaScript之间的交互,以提供这样的解决方案

此外,IDE必须是Visual Studio,因为最终我希望使用.aspx文件编写相同的逻辑

因此,对于我最初的学习尝试,我尝试实现以下逻辑:

  • 从表单的输入标记获取字符串
  • 提交表单,导致脚本submit()运行
  • 脚本反转字符串,然后
  • 在同一输入标记中显示反向字符串,该标记现在已禁用
我写的代码如下:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
    <script type="text/javascript">
        function reverseString() {
            var s = document.getElementById('reverseString').value;
            var reversed;

            for (var i = s.length - 1; i >= 0; i--) {
                reversed += s[i];
            }

            document.getElementById('reverseString').disabled = true;
            document.getElementById('reverseString').value = reversed;
        }

        function submit(form) {
            reverseString();
        }
    </script>

    <title>Play with Code</title>
</head>

<body>
    <form name="myform" onsubmit="submit();">
        Reverse String: <input type="text" id="reverseString"/><br/>
        <input type="submit" value="Submit"/>
    </form> 
</body>
</html>

函数反向限制(){
var s=document.getElementById('reverseString').value;
var反转;
对于(var i=s.length-1;i>=0;i--){
反向+=s[i];
}
document.getElementById('reverseString').disabled=true;
document.getElementById('reverseString')。value=reversed;
}
功能提交(表格){
反向限制();
}
玩代码
反向字符串:
它不起作用,我真的不知道如何解决它

我尝试按照这些链接提供的说明进行调试,但未成功:

请帮助我修复这段代码,如果可能的话,请建议或指导我如何调试这段代码


谢谢。

这里有一个带注释的工作代码,可以解释你做错了什么:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
    <title>Play with Code</title>
</head>
<body>
    <form name="myform" id="form">
        Reverse String: <input type="text" id="reverseString"/><br/>
        <input type="submit" value="Submit"/>
    </form>
    <script>
        function reverseString() {
            var s = document.getElementById('reverseString').value;
            // reverse should initialized as a empty String
            // to prevent adding char to "undefined" string
            var reversed = '';

            for (var i = s.length - 1; i >= 0; i--) {
                reversed += s[i];
            }

            document.getElementById('reverseString').disabled = true;
            document.getElementById('reverseString').value = reversed;
        }

        function submit(ev) {
            // preventDefault prevent the form to do his automatic
            // behavior which submit the form with a new HTTP request
            ev.preventDefault();
            reverseString();
        }

        // Attach the event to the form
        document.getElementById('form').addEventListener('submit', submit);
    </script>
</body>
</html>

玩代码
反向字符串:
函数反向限制(){ var s=document.getElementById('reverseString').value; //反向应初始化为空字符串 //防止向“未定义”字符串添加字符 var反向=“”; 对于(var i=s.length-1;i>=0;i--){ 反向+=s[i]; } document.getElementById('reverseString').disabled=true; document.getElementById('reverseString')。value=reversed; } 功能提交(ev){ //防止默认值阻止窗体执行其自动 //使用新HTTP请求提交表单的行为 ev.preventDefault(); 反向限制(); } //将事件附加到表单 document.getElementById('form')。addEventListener('submit',submit');

//HTML
反向字符串:
//剧本 函数funcreverse(){ var s=document.getElementById('reverseString').value; var反向=“”; 对于(var i=s.length-1;i>=0;i--){ 反向+=s[i]; } document.getElementById('reverseString').disabled=true; document.getElementById('reverseString')。value=reversed; };
reverse=s.split(“”).reverse().join(“”)
Try
var reversed=“”有些信息不会在一张便条中向每个人提出两个(或更多)问题:小心天真地在JavaScript中反转字符串,因为字符编码会咬到你。请阅读有关该主题的最佳SO答案之一:
//HTML
Reverse String: <input type="text" id="reverseString"/><br/>
    <input type="button" value="Submit" onClick="funcreverse()"/>

//Script
 function funcreverse () {
        var s = document.getElementById('reverseString').value;
        var reversed = '';
        for (var i = s.length - 1; i >= 0; i--) {
            reversed += s[i];
        }

        document.getElementById('reverseString').disabled = true;
        document.getElementById('reverseString').value = reversed;
    };