Js:向多个输入字段注入值

我有一个带有输入字段的表单。我能够从<script>. 我从 POST 请求中获取该值。


但是当我尝试创建另一个具有相同输入字段(相同名称和 ID)的表单时,值注入不起作用。


我无法解决问题。


这是第一种情况的 html 和路由处理程序:


<form role="form" action="/scale" method="POST" id="sc-form-scale">

            <input type="hidden" name="filePath" id="filePath" value="">

            <input type="submit" value="Submit for Scaling">        

</form>



app.post('/scale', function(req, res) {

        

        var myFilePath = req.body.filePath;

        res.redirect('/');

        

        console.log(myFilePath);

        console.log(typeof myFilePath);


        

});

这是第二种情况:


<form role="form" action="/rotate" method="POST" id="sc-form-rotate">

                <input type="hidden" name="filePath" id="filePath" value="">

                <input type="submit" value="Submit for Rotation">       

</form>


    app.post('/rotate', function(req, res) {

    

        var myFilePath = req.body.filePath;

        res.redirect('/');

    

        

        console.log(myFilePath);

        console.log(typeof myFilePath);

    

    });

在第一种情况下,一切正常。这是我得到的 console.log 输出:


/home/user1/Desktop/myPart.step

string

但这是我在第二种情况下得到的:


string

如您所见,它被识别为字符串,但它的值为空。


我不明白为什么会这样。代码完全一样。


偶然的你
浏览 133回答 1
1回答

噜噜哒

对于这两种形式,您都有 id filePath。您的 ID 应该是唯一的,但名称不一定是。听起来你是通过 id 设置值,所以你应该为id每个分配一个唯一的并单独设置它们,或者将它们设置为具有相同的类并使用querySelectorAll或类似的东西来一次选择多个元素。例如,如果您将类分配'filePathClass'给两个输入,当您想要分配一个值时,您可以执行以下操作:document.querySelectorAll('.filePathClass').forEach(function (fileInput) {&nbsp; &nbsp; fileInput.value = '...';})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript