0

フォームがあり、リンクから送信したい。何かのようなもの :

<form action="{{ path('update', { 'id': entity.id }) }}" id="update" method="post" {{ form_enctype(edit_form) }}>
    {{ form_widget(edit_form) }}
</form>

... some HTML

<a href="javascript:$('#update').submit();">Valid</a>

しかし、このリンクを使用してフォームを送信すると、フォームは Javascript で検証されず (空のフィールドなどを確認してください...)、エラーのツールチップは表示されません。

フォームタグにボタンを作成すると機能しますが、フォームタグの外にこのボタンが必要です。

これどうやってするの ?

edit : 私のフォームはモーダル ダイアログにあります。

4

3 に答える 3

0

これは期待どおりに機能しますが、

<script language="javascript">    
    $.fn.submitForm = function() {
        $('#update').submit();
    };    
</script>

そして、呼び出しは、

<a href="javascript:$(this).submitForm();">Valid</a>

しかし、内でjavascriptの実行を使用することは評価されていません。このトピックに関するこの前のhref議論を見てください、

それでは、私が疑問に思っているのは、Jqueryを使用しているのに、なぜhtml内で送信をトリガーしようとしているのhrefでしょうか。、単にjavascriptファイルでscript.jsと言います

//assuming there is only one <a></a> tag
$(document).on('click', 'a', function(){
   $('#update').submit();
});
于 2012-08-13T16:26:58.677 に答える
0

理想的な答えではありませんが、これでうまくいくはずです...

フォームに送信ボタンがあり、css を使用して非表示にします

次に、現在のjsリンクがどこにあるか、これがjqueryを使用して正しいフォーム送信ボタンのクリックをシミュレートするようにします

繰り返しますが、理想的ではありませんが、仕事をするべきだと思います..

于 2012-08-13T13:08:08.993 に答える
0

私は別の方法でそれをしました。

HTML5 フィールド コントロールを使用するために、非表示の送信ボタンを配置しました。

$('#my_submit_button').click();

そしてそれは動作します。

于 2012-08-14T10:22:57.933 に答える