1. ホーム
  2. javascript

送信前にPOSTパラメータを追加する

2023-11-12 14:35:30

質問

このような簡単なフォームがあります。

<form id="commentForm" method="POST" action="api/comment">
    <input type="text" name="name" title="Your name"/>
    <textarea  cols="40" rows="10" name="comment" title="Enter a comment">
    </textarea>
    <input type="submit" value="Post"/>
    <input type="reset" value="Reset"/>
</form>

サーバーに送信する前に、2つのPOSTパラメータを追加する必要があります。

var params = [
               {
                 name: "url",
                 value: window.location.pathname
               },
               {
                  name: "time",
                  value: new Date().getTime()
               }
             ];

を、フォームを修正しないでください。

どのように解決するのですか?

Jqueryを使用して追加すること。

$('#commentForm').submit(function(){ //listen for submit event
    $.each(params, function(i,param){
        $('<input />').attr('type', 'hidden')
            .attr('name', param.name)
            .attr('value', param.value)
            .appendTo('#commentForm');
    });

    return true;
});