7

私は典型的な形をしています:

<form action="" accept-charset="utf-8" method="post">
    <textarea name="content"></textarea>
</form>

およびフォーム内ではない要素:

<input type="password" name="password">

フォームを送信するときにパスワードの値をフォームに追加するにはどうすればよいですか?

$('form').submit(function(){
   //hmmm
});
4

5 に答える 5

16

フォームに非表示フィールドを作成し、送信時にパスワードフィールド値をそのフィールドにコピーします。このような。

<form action="" accept-charset="utf-8" method="post">
    <textarea name="content"></textarea>
    <input type="hidden" name="password" id="ps">
</form>

<input type="password" name="password" id="ps1">

そして送信機能で。

$('form').submit(function(){
   $('input#ps').val($('input#ps1').val());
   return true;
});
于 2012-08-27T04:40:49.037 に答える
5

これを「正しく」行うための、まだサポートされていないがHTML5に準拠した方法は、<input>要素に[form]属性を与えることです。

<form id="foo">
    ...stuff...
</form>

<input type="password" id="bar" form="foo" />

最終的にはこれを解決策として使用できるようになるかもしれませんが、より多くのブラウザーが[form]属性をサポートするまで、JavaScriptでポリフィルする必要があります。

于 2012-08-27T04:49:34.813 に答える
1
$('form').submit(function(){
   var password = $('input[type="password"]');
   password.appendTo($(this));
   //or $(this).append(password);
});
于 2012-08-27T04:40:46.790 に答える
0

フォーム内に非表示の入力要素を含め、外部入力の変更イベントで、内部入力に外部入力値を割り当てます。

<form action="" accept-charset="utf-8" method="post">
    <textarea name="content"></textarea>
    <input type="hidden" id="inner" />
</form>
<input type="password" name="password" >


<script type="text/javascript">
    $(function(){
        $('#outer').change(function(){
            $('#inner').val($(this).val());
        });
    });
</script>
于 2012-08-27T04:44:22.643 に答える
0

次のように、フォーム内で非表示の入力フィールドを使用します。

元 : <input type="hidden" name="pass">

このようなフォームを送信すると:

$('form').submit(function(){
 <!-- Save the value of password into the hidden field
  Note : Password here should just be one field in that page -->
 $('input[name="pass"]').val($('input[type="password"]').val());
 return true;

});

于 2012-08-27T04:44:38.337 に答える