1

私は以下のフォームを持っています

 @using (Html.BeginForm("register", "users"))
{
<p>
    First Name
</p>
<div>
    @Html.TextBoxFor(x => x.FirstName)
    @Html.ValidationMessageFor(x => x.FirstName)
</div>
</div>
<div class="input_block">
    <p>
        Last Name <span class="required">*</span></p>
    <div>
        @Html.TextBoxFor(x => x.LastName)
        @Html.ValidationMessageFor(x => x.LastName)
    </div>
</div>
<div class="input_block">
    <p>
        CV <span class="required">&nbsp;</span></p>
    <input type="file" name="Cv" class="w_265" data-val-remote="&amp;#39;Cv&amp;#39; is invalid."
        data-val-remote-additionalfields="*.Cv" data-val-remote-url="/Validation/IsUID_Available" />
</div>

}

上記のフォームでは、「CV」フィールド以外のすべてのフィールドで「asp .net mvc3 Unobtrusive JavaScript validation for client side validation」を使用しています。

「Cv」の場合、手動で検証属性を指定しました(data-val-remote、data-val-remote-url、data-val-remote-additionalfields)

「Cv」に対してリモート検証が行われるようにしますが、フォームを送信すると、「Cv」フィールドを除くすべてのフィールドが検証されます。これは、「Cv」フィールドに対してクライアント側の検証がトリガーされないことを意味します。

サーバー側の検証に流暢な検証を使用しています

私を助けてください

ありがとう

4

1 に答える 1

0

タグ のdata-val="true"属性を忘れたようです。目立たない検証スクリプトが他の属性を調べるためにも必要です。これがないと、スクリプトは入力を完全に無視します。input type="file"data-val="true"

于 2011-06-29T15:01:36.487 に答える