0

チェックボックスが選択されている場合は表示され、チェックボックスが選択されていない場合は非表示になる2つのフィールドとオプションのフィールドを持つ単純なフォームがあります-表示/非表示はjQueryによって制御されます。問題は、ページが最初にロードされたときに通常どおりフォームが送信されますが、チェックボックスをオンまたはオフにすると、送信ボタンがフォームを送信しないか、さらに奇妙なことに何もしません。

私はモデルで強く型付けされたビューを持っています:

@model Metteem.ViewModels.SchedularAccount

そして、私の簡単なスクリプトは次のとおりです。

<script type="text/javascript">
$(document).ready(function () {
    $("#showhide").click(function () {
        $("#alternatingInput").toggle('fast');
    });
});
</script>

フォームのコードは次のとおりです。

@using (Html.BeginForm(null, null, FormMethod.Post, new { Class = "well form-horizontal" }))
{
    <fieldset>
        <div class="control-group">
            <label class="control-label">Meeting ID</label>
            <div class="controls">
                @Html.TextBoxFor(model => model.MeetingId, new { Class = "input-xlarge" })
                @Html.ValidationMessageFor(model => model.MeetingId, null, new { Class = "help-inline" })
            </div>
        </div>
        <div class="control-group">
            <label class="control-label">Password</label>
            <div class="controls">
                @Html.PasswordFor(model => model.Password, new { Class = "input-xlarge" })
                @Html.ValidationMessageFor(model => model.Password, null, new { Class = "help-inline" })
            </div>
        </div>
        <div class="control-group">
            <label class="control-label">Login as Host?</label>
            <div class="controls">
                @Html.CheckBoxFor(model => model.IsHost, new { Class = "input-xlarge", id = "showhide" })
            </div>
        </div>
        <div class="control-group" id="alternatingInput" style="display: block; ">
            <label class="control-label">Participant ID</label>
            <div class="controls">
                @Html.TextBoxFor(model => model.UserId, new { Class = "input-xlarge", Value = "0" })
            </div>
        </div>

    </fieldset>
    <div class="form-actions">
        @Html.ActionLink("Cancel", "Index", "Home", null, new { Class = "btn" })
        <button class="btn btn-primary">Login</button>
    </div>
}

私のアクションでは、HttpPost 属性があります。

[HttpPost]
public ActionResult HostParticipantLogin(SchedularAccount account)
{
   //Rest of my code
}

何が問題になる可能性がありますか?

4

1 に答える 1

1

@avesse のおかげで、タイプを送信として追加すると問題が解決します。

要素<button type="submit" class="btn btn-primary">を使用する必要がある場合は試してください。<button>

于 2012-06-12T09:56:07.170 に答える