3
// html
<% using (Html.BeginForm("MyAction", "MyController", 
                   new { id = ViewContext.RouteData.Values["id"] },
                   FormMethod.Post, 
                   new { enctype = "multipart/form-data", class="myForm" }))
 { %>
    <input type="file" name="blah" />
 <% } %>



// script
$container.find('.myButton').click(function() {
    $container.find('.myForm').submit();
});

フォームを送信する前に、送信時にのみ計算できるパラメーター (ルート値) をいくつか追加する必要があります。

それ、どうやったら出来るの?

4

1 に答える 1

6

フォームを送信する前に、隠しフィールドをフォームに追加できます。

$container.find('.myButton').click(function() {
    var form = $container.find('.myForm');
    form.append(
        $(document.createElement('input'))
            .attr('type', 'hidden')
            .attr('name', 'somename')
            .attr('type', 'somecalculatedvalue')
    );
    form.submit();
});
于 2010-09-21T14:04:10.390 に答える