Javascript数组如何为数组中的每一行执行一个函数

时间:2014-02-12 17:33:06

标签: javascript php arrays

好的所以这是我当前的剧本

<html>
<head>


    <script type="text/javascript">
        function textareaToArray(t){
        return t.value.split(/[\n\r]+/);
        }
        function showArray(msg){
        document.getElementById("message").innerHTML = msg.join("&#013;");
        }
    </script>


    </head>
        <title>
        Welcome To ....
        </title>
<body>
        <center>
        <h1> WELCOME TO .... </h1></center>

    </br>
    </br>
    </br>

<center>

        <form>
        <textarea rows="10" cols="60" name="alpha"></textarea>
        <br>
        <input type="button"
        value="show array"
        onclick="showArray(textareaToArray(this.form.alpha ))">
        </form>
</center>
    </br>
<center>
        <textarea id="message" rows="6" cols="60" name="message"></textarea>
</center>
</body>
</html>

你可以看到javascript函数基本上只是将数组输出到第二个文本区域。

如何为数组中的每一行调用一个函数

e.g。

一个函数使用数组发布到php脚本中的行作为发布数据然后回显结果,之后它对下一行做同样的事情可以帮助我如何将每行发布到php脚本并回显回复到文本区域的响应

2 个答案:

答案 0 :(得分:1)

我重写了整个示例,还修复了html中的其他一些小错误。

<html><head><title>Welcome To ....</title>
    <script type="text/javascript">
        function textareaToArray(t){
            return t.value.split(/[\n\r]+/);
        }
        function showArray(msg){
            for(i = 0; i < msg.length; i++) {
                // something per item
                alert(msg[i]);
            }
            // the old code
            document.getElementById("message").innerHTML = msg.join("&#013;");
        }
    </script>
</head>
<body>
    <h1> WELCOME TO .... </h1>
    <form>
    <textarea rows="10" cols="60" name="alpha"></textarea>
    <br>
    <input type="button" value="show array" onclick="showArray(textareaToArray(this.form.alpha ))">
    </form>
    <br>
    <textarea id="message" rows="6" cols="60" name="message"></textarea>
</body></html>

发生“警报”的地方是您可以为数组中的每个项目添加代码。现在警告,没有输入检查..这个代码是残酷的不安全,如果你允许从textarea传递东西,这绝对是XSS攻击的载体。

答案 1 :(得分:0)

正确答案是: for (var i = 0; i < array.length; i++) alert(array[i])