2012-04-24 18 views
1

DateFormプロパティ/ inputfieldsにDisplayFormatとdatepickerを追加してから、フォームが送信を停止しました。私は何の誤りもありません(クロムF12またはビジュアルスタジオで)。ASP.NET剃刀:送信しないフォーム

編集:Displayformatをdd/MM/yyyyに設定し、datepickerを「dd/mm/yyyy」に設定しました。しかし、それもそれを解決しませんでした。

@using (Html.BeginForm("CreateCampaign", "Home")) { 
    @Html.ValidationSummary(true) 
    <fieldset> 
     <legend>Campaign</legend> 
     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.CampaignName) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.CampaignName) 
      @Html.ValidationMessageFor(model => model.Campaign.CampaignName) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.WebsiteUrl) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.WebsiteUrl) 
      @Html.ValidationMessageFor(model => model.Campaign.WebsiteUrl) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.PrivacyPolicyUrl) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.PrivacyPolicyUrl) 
      @Html.ValidationMessageFor(model => model.Campaign.PrivacyPolicyUrl) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.TermsUrl) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.TermsUrl) 
      @Html.ValidationMessageFor(model => model.Campaign.TermsUrl) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.PricepageUrl) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.PricepageUrl) 
      @Html.ValidationMessageFor(model => model.Campaign.PricepageUrl) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.Startdate) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.Startdate) 
      @Html.ValidationMessageFor(model => model.Campaign.Startdate) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.Enddate) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.Enddate) 
      @Html.ValidationMessageFor(model => model.Campaign.Enddate) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.Starthour) 
     </div> 
     <div class="editor-field"> 
      @Html.DropDownListFor(model => model.Campaign.Starthour, new SelectList(Model.Hours)) 
      @Html.ValidationMessageFor(model => model.Campaign.Starthour) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.Endhour) 
     </div> 
     <div class="editor-field"> 
      @Html.DropDownListFor(model => model.Campaign.Endhour, new SelectList(Model.Hours)) 
      @Html.ValidationMessageFor(model => model.Campaign.Endhour) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.PMAM) 
     </div> 
     <div class="editor-field"> 
      @Html.DropDownListFor(model => model.Campaign.PMAM, new SelectList(Model.AMPM, "key", "value")) 
      @Html.ValidationMessageFor(model => model.Campaign.PMAM) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.Language) 
     </div> 
     <div class="editor-field"> 
      @Html.DropDownListFor(model => model.Campaign.Language, new SelectList(Model.Languages, "key", "value")) 
      @Html.ValidationMessageFor(model => model.Campaign.Language) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.FK_ID_MerchantApp) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Campaign.FK_ID_MerchantApp) 
      @Html.ValidationMessageFor(model => model.Campaign.FK_ID_MerchantApp) 
     </div> 

     <div class="editor-label"> 
      @Html.LabelFor(model => model.Campaign.CampaignType) 
     </div> 
     <div class="editor-field"> 
      @Html.DropDownListFor(model => model.Campaign.CampaignType, new SelectList(Model.Types, "key", "value")) 
      @Html.ValidationMessageFor(model => model.Campaign.CampaignType) 
     </div> 
     <p> 
      <input type="submit" value="Create" /> 
     </p> 
    </fieldset> 
} 
<script type="text/javascript"> 
    $('#Campaign_Startdate').datepicker({ 
     dateFormat: "DD, d MM, yy", 
     minDate: new Date() 
    }); 
    $('#Campaign_Enddate').datepicker({ 
     dateFormat: "DD, d MM, yy", 
     minDate: new Date() 
    }); 

</script> 
<div> 
    @Html.ActionLink("Back to List", "Index") 
</div> 




     public class Campaign 
     { 
      #region CTor 
      public Campaign() 
      { 
      } 
      #endregion 

      #region Properties 

      [XmlElement(ElementName = "Id_campaign")] 
      public string ID_Campaign { get; set; } 
      [XmlElement(ElementName = "Campaignname")] 
      public string CampaignName { get; set; } 
      [XmlElement(ElementName = "Websiteurl")] 
      public string WebsiteUrl { get; set; } 
      [XmlElement(ElementName = "Privacypolicyurl")] 
      public string PrivacyPolicyUrl { get; set; } 
      [XmlElement(ElementName = "Termsurl")] 
      public string TermsUrl { get; set; } 
      [XmlElement(ElementName = "Pricepageurl")] 
      public string PricepageUrl { get; set; } 
      [XmlElement(ElementName = "Maxcredit")] 
      public Int32 MaxCredit { get; set; } 
      [XmlElement(ElementName = "Fk_id_currency")] 
      public string FK_ID_Currency { get; set; } 
      [XmlElement(ElementName = "Maxscans")] 
      public short MaxScans { get; set; } 
      [XmlElement(ElementName = "Startdate")] 
      [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd, MMM d, yyyy}")] 
      public DateTime Startdate { get; set; } 
      [XmlElement(ElementName = "Enddate")] 
      [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd, MMM d, yyyy}")] 
      public DateTime Enddate { get; set; } 
      [XmlElement(ElementName = "Starthour")] 
      public short Starthour { get; set; } 
      [XmlElement(ElementName = "Endhour")] 
      public short Endhour { get; set; } 
      [XmlElement(ElementName = "Pmam")] 
      public string PMAM { get; set; } 
      [XmlElement(ElementName = "Language")] 
      public string Language { get; set; } 
      [XmlElement(ElementName = "Fk_id_merchantapp")] 
      public string FK_ID_MerchantApp { get; set; } 
      [XmlElement(ElementName = "Campaigntype")] 
      public string CampaignType { get; set; } 
      [XmlElement(ElementName = "Createtimestamp")] 
      [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd, MMM d, yyyy}")] 
      public DateTime CreateTimestamp { get; set; } 
      [XmlElement(ElementName = "Lastupdate")] 
      [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd, MMM d, yyyy}")] 
      public DateTime LastUpdate { get; set; } 
      [XmlElement(ElementName = "Lastupdateby")] 
      public string LastUpdateBy { get; set; } 
      [XmlElement(ElementName = "Status")] 
      public short Status { get; set; } 
    } 
+0

あなたが「提出していない」と言ったとき - あなたはブラウザがそれを送信していないことを意味しますか(その場合はマークアップの問題です)?または、データがサーバー上で正しく読み取られていないことを確認しますか? –

+0

[送信]ボタンをクリックしても何も起こりません。マークアップの問題だと思ってはいけません。クロムF12はそれについて苦情を申し立てています。 – Reinard

+0

そして、私はDateFormatを追加するまでこの問題を抱えていませんでした – Reinard

答えて

3

確認の概要がtrueに設定されています。控えめな検証によってフォームが送信されず、特定のフィールドにエラーが添付されていないため、フォームが表示されないことがありますか?おそらく、それをfalseに設定しようとして、何かが飛び出すのを見ますか?クライアントの確認に加えてunobtrusive validation turned onがありますか?

提出時にhttp投稿が送信されているかどうかを確認するには、chromeのネットワークツールを使用しましたか?あなたのモデルでも "dd/mm/yyyy"を使ってみましたか?

+0

私を撃ってください。修正をありがとう。 datepickerはatmで動作していませんが、私は何が間違っているか把握します。 – Reinard

1

フォームはありません。 Html.BeginFormで包み:

@{ using (Html.BeginForm()) { 




       .... 




    } 
} 
+0

ただ、私の質問にそれをコピーしていません、申し訳ありません。 – Reinard

1

それはあまりにも明白に聞こえるかもしれませんが、あなたは「日付ピッカー」を追加した後、それは動作を停止し、あなたはjQueryのを使用しているので、あなたが

$(document).ready(function() { 

}); 

を追加してみてくださいあなたの 'datepicker'コードをラップする。

+0

datepickerとDisplayFormatとの関係がすべて削除されましたが、フォームはまだ送信されません。 チップをありがとう。 – Reinard