2014-01-25 4 views
1

Я использовал Requiredfieldvalidator для проверки текстового поля, однако, когда я нажимаю кнопку, страница отправляется назад, даже если проверка не выполняется. Что я делаю не так? Ниже мой код.CausesValidation = true not working

<div id="addFactDiv" style="display:none;"> 
    <asp:TextBox ID="inputFact" Height="50px" Width="100%" runat="server" TextMode="MultiLine" placeholder="Enter a fact"></asp:TextBox> 
    <asp:requiredfieldvalidator CssClass="validator" Display="Dynamic" ID="Requiredfieldvalidator5" ControlToValidate="inputFact" ValidationGroup="ValidateFact" ErrorMessage="Please Enter a fact" runat="server"/> 
    <input type="button" Class="cancel" value="Cancel" OnClick="hideInput('addFactDiv');" /> 
    <asp:Button ID="Submit_Fact" CssClass="submit" runat="server" CausesValidation="true" ValidationGroup="ValidateFact" Text="Submit" OnClick="Submit_Fact_Click"/> 
</div> 

EDIT

У меня были некоторые закомментированные поля, а на страницу, вызывая две ошибки, которые я упомянул в комментариях. Когда я удалил эти поля, он начал работать нормально. Однако я не уверен, почему .. Прокомментированные поля также отображаются на странице так же, как и другие?

+0

проверьте, есть ли у вас ошибка jquery на вашей странице в консоли браузера. – Shashank

+0

Проверьте метод Submit_Fact_Click, это может вызвать ошибку javascript. – nerdybeardo

+0

@Shashank Я получаю эти две ошибки: Неподвиг TypeError: Невозможно установить свойство «controltovalidate» из null country-guide.aspx? Страна = Ангилья & Город = Долина +: 362 (анонимная функция) Uncaught TypeError: Невозможно прочитать свойство ' evaluationfunction»нулевых WebResource.axd d = x2nkrMJGXkMELz33nwnakImgmOWJ-SIqKoPuh1nH8njgfYOD-km8FhKtXcG6E3ZBrFMQnBeIhF6x - KmR ...: 281 ValidatorOnLoad WebResource.axd d = x2nkrMJGXkMELz33nwnakImgmOWJ-SIqKoPuh1nH8njgfYOD-km8FhKtXcG6E3ZBrFMQnBeIhF6x - KmR ...: 281 (анонимная функция) что это имею в виду? – Tehreem

ответ

1

Я пытался на моем примере приложения и нашел ниже ошибки,

WebForms UnobtrusiveValidationMode требует ScriptResourceMapping для 'JQuery'. Добавьте ScriptResourceMapping с именем jquery (с учетом регистра).

Позже я обнаружил, что нам нужно добавить ниже ключ в .config файл, который исправил проблему. (Я не знаю, почему!)

Ref: Link

Моего ASPX код выглядит, как показано ниже,

<form id="form1" runat="server"> 
    <div> 
     <div id="addFactDiv" style="float: right"> 
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
     </div> 
    </div> 
    <p> 
     <asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup="test" /> 
     <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"    ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator" ValidationGroup="test"></asp:RequiredFieldValidator> 
    </p> 
</form> 

Надеется, что это может помочь !!