.input-التحقق من صحة الخطأ الدرجة يقم بإضافة إدخال في ضوء

StackOverflow https://stackoverflow.com/questions/1421891

سؤال

وأنا أحاول أن أضيف بعض التحقق من صحة بسيط لبلدي asp.net شكل بعثة التحقق المشتركة وأواجه صعوبة في الحصول على الدرجة .input-التحقق من صحة الخطأ تضاف إلى مدخلات بلدي. التحقق من صحة ملخص الأخطاء والعمل .field-التحقق من صحة الخطأ على ما يرام. ويرجع الفضل في ذلك مسبقا لمساعدتكم!

وتحرير: شكرا لمساعدة الجميع !!! كان لي أن أضيف هذا الخط إلى وحدة تحكم لتجنب الخطأ:

ModelState.SetModelValue("txtEmailOrDealerID", collection.ToValueProvider()["txtEmailOrDealerID"]);

ووالشخصي:

<%using (Html.BeginForm("DealerLogin", "Home", FormMethod.Post))
  { %>
    <fieldset>
        <legend>Dealer Login</legend>
        <div class="row">
            <%=Html.Label("txtEmailOrDealerID", "E-Mail Or Dealer ID:")%>
            <%=Html.TextBox("txtEmailOrDealerID")%>
            <%=Html.ValidationMessage("txtEmailOrDealerID", "*")%>
        </div>
        <div class="row">
            <%=Html.Label("txtPassword", "Password:")%>
            <%=Html.Password("txtPassword")%>
            <%=Html.ValidationMessage("txtPassword", "*")%>
        </div>
        <div class="centerbutton">
            <input type="submit" id="btnSubmitDealer" value="Login"/>
        </div>
    </fieldset>
<%} %>

والمراقب المالي:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult DealerLogin(FormCollection collection)
{
    if (string.IsNullOrEmpty(collection["txtEmailOrDealerID"].Trim()))
        ModelState.AddModelError("txtEmailOrDealerID", "E-Mail Address or Dealer ID is required.");
    if (string.IsNullOrEmpty(collection["txtPassword"].Trim()))
        ModelState.AddModelError("txtPassword", "Password is required.");
    if (ModelState.IsValid)
        return Redirect("~/MyUploads");
    else
        return View("Index");
}

ووCSS:

/*Validation*/
.field-validation-error{color: #ff0000;}
.input-validation-error{border: 1px solid #ff0000; background-color: #ffeeee;}
.validation-summary-errors{color: #ff0000;}

ووHTML.Label تمديد الطريقة:

public static string Label(this HtmlHelper helper, string forControl, string text)
{
    return String.Format("<label for='{0}'>{1}</label>", forControl, text);
}
هل كانت مفيدة؟

المحلول

ومن أعلى رأسي، يجب على المعلمة معرف AddModelError تتطابق مع هوية من المدخلات. حتى في قضيتك، فإنه يجب تغيير إلى:

ModelState.AddModelError("txtEmailOrDealerID", "E-Mail Address or Dealer ID is required.");    
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top