JS:从数组中获取与表单输入中的行匹配的字符串

发布于 2024-10-22 20:21:59 字数 1054 浏览 4 评论 0原文

我有一个带有文本输入和提交按钮的表单。在文本输入中,您可以编写简单的命令,例如 /look(创建一个简单的游戏,以尝试并提高我的技能)。 在 .js 文件中,我有一些命令/字符串的数组。

我的问题是:如何将表单中的字符串与数组中的字符串进行匹配。 到目前为止,我已经计算出我需要一个 for-string 和一个 if/else-string,但我不知道如何实现。

html 文件:

    <div id="commandField">
        <form method="POST" action="action" onSubmit="return commands(str);">
            <p class="center">Command: <input type="text" name="command" class="command" /><input type="submit" value="Execute" /></p>
        </form>
    </div>

javascript 文件:

function commands(str)
{
    var charCommand=new Array(); // regular array (add an optional integer
    charCommand[0]="/look";       // argument to control array's size)
    charCommand[1]="/use";
    charCommand[2]="/continue";
    charCommand[3]="/pickup";

    for(i=0 ; i < charCommand.length ; i++)
{
    if(str.match(charCommand[x]))
        {
            document.getElementById("commandField").innerHTML=charCommand[x];
        }
}

}

I have a form with a text-input and a submit button. In the text-input you write simple commands like /look (creating a simple game, to try out and improve my skills).
In a .js-file I have an array of a few commands/strings.

My problem is: How do I match the string in the form with the strings in the array.
I have calculated so far that I need a for-string and a if/else-string, but I don't know how to get to that.

The html-file:

    <div id="commandField">
        <form method="POST" action="action" onSubmit="return commands(str);">
            <p class="center">Command: <input type="text" name="command" class="command" /><input type="submit" value="Execute" /></p>
        </form>
    </div>

The javascript-file:

function commands(str)
{
    var charCommand=new Array(); // regular array (add an optional integer
    charCommand[0]="/look";       // argument to control array's size)
    charCommand[1]="/use";
    charCommand[2]="/continue";
    charCommand[3]="/pickup";

    for(i=0 ; i < charCommand.length ; i++)
{
    if(str.match(charCommand[x]))
        {
            document.getElementById("commandField").innerHTML=charCommand[x];
        }
}

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

青巷忧颜 2024-10-29 20:21:59

你几乎猜对了,
这就是我所做的。

<script type="text/javascript">
        function commands(form)
    {
        var str = form.command.value;
       var charCommand=new Array(); // regular array (add an optional integer
        charCommand[0]="/look";       // argument to control array's size)
        charCommand[1]="/use";
        charCommand[2]="/continue";
        charCommand[3]="/pickup";

        for(i=0 ; i < charCommand.length ; i++)
    {
        if(str.match(charCommand[i]))
            {
                document.getElementById("commandField").innerHTML=charCommand[i];
            }
    }
    }



    </script>
    </head>
    <body>
        <div id="commandField">
            <form method="GET" action="">
                <p class="center">Command: <input type="text" name="command" class="command" />
                <input type="button" value="Execute" onClick="commands(this.form)"/></p>
            </form>
        </div>
    </body>
    </html>

You almost have it right,
Heres what i did.

<script type="text/javascript">
        function commands(form)
    {
        var str = form.command.value;
       var charCommand=new Array(); // regular array (add an optional integer
        charCommand[0]="/look";       // argument to control array's size)
        charCommand[1]="/use";
        charCommand[2]="/continue";
        charCommand[3]="/pickup";

        for(i=0 ; i < charCommand.length ; i++)
    {
        if(str.match(charCommand[i]))
            {
                document.getElementById("commandField").innerHTML=charCommand[i];
            }
    }
    }



    </script>
    </head>
    <body>
        <div id="commandField">
            <form method="GET" action="">
                <p class="center">Command: <input type="text" name="command" class="command" />
                <input type="button" value="Execute" onClick="commands(this.form)"/></p>
            </form>
        </div>
    </body>
    </html>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文