タブレット (asp.net MVC 2 およびブラウザーはモバイル サファリまたは android のもの) で自分の Web サイトを閲覧するときに問題に直面しています。フォームを送信すると、モデルがバインドされず、いくつかのエラーが発生します。これはタブレットでのみ発生します(iPadとACER iconia tab A200を試しました)。
ここに私のモデルがあります:
public class ChoixVehiculeImmatriculationModel : Model
{
[Required(ErrorMessageResourceName = "ImmatriculationRequise", ErrorMessageResourceType = typeof(Erreurs))]
public string Immatriculation { get; set; }
}
これが私の見解です:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ChoixVehiculeImmatriculationModel>" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div id="immatriculation">
<% Html.BeginForm("ChoixImmatriculation", "ChoixVehicule", FormMethod.Post ); %>
<table id="tabImmatriculation">
<tr><td><%= Libelles.SaisissezNumeroImmatriculation %> :</td></tr>
<tr><td><%= Html.TextBoxFor(m => m.Immatriculation, new { maxlength = 20, autocomplete = "off" })%></td></tr>
<tr><td>
<div id="btnValider">
<div class="btnValidText" onclick="$(this).closest('form').submit();"><%= Libelles.Valider %></div>
</div>
</td></tr>
</table>
<%Html.EndForm(); %>
</div>
</asp:Content>
コントローラーは次のとおりです。
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult ChoixImmatriculation(ChoixVehiculeImmatriculationModel model)
{
if ( ModelState.IsValid )
{
using ( IVehiculeUIService vehiculeService = GlobalContainer.Resolve<IVehiculeUIService>() )
{
List<VehiculeModel> vehicules = vehiculeService.GetListeVehiculesParImmatriculation(model.Immatriculation);
return GestionRetourSelonResultats(vehicules);
}
}
return View("ChoixVehiculeImmat", model);
}
はModelState.IsValid
false で、フィールドImmatriculation
はであると表示されnull
ます。しかし、テキストボックスはいっぱいです!
開始時にランダムに発生します。時々それが機能するために5回のようにそれをしなければなりません..私のラップトップでは、それは決して起こりません.すべてがうまく機能しています..
誰でも私を助けてくれますか?ブラウザとモバイルブラウザの違いでしょうか?