2017-01-09 3 views
0

Я работаю над интегрированием форм Bootsrap в Kentico CMS, который работает на .NET. При этом я заметил, что тег «форма» удаляется из моей формы..NET form with Bootstrap 3.3.5

Я получил следующее от Kentico Support - боюсь, что пользовательские формы тегов не поддерживаются в ASP.NET WebForms. Проблема в том, что в ASP.NET вся страница обернута в тег формы (это стандартное поведение .NET, не относящееся к Kentico), а стандарт HTML не допускает вложенных тегов формы.

У меня есть шаблон страницы, построенный с обработкой ошибок в HTML, у меня нет опыта программирования на .NET. Может ли кто-нибудь указать мне, как я могу правильно обработать обработку ошибок и представления файлов Bootstrap в .NET?

Спасибо!

Вот текущее форматирование:

<form action="" method="post" id="contact_form"> 
    <div class="col-md-12"> 
     <div class="col-md-6 zero-margin-bottom"> 
      <div class="form-group"> 
       <label for="Company">Company</label> 
       <input name="company" type="company" class="form-control" id="exampleInputCompany" placeholder="Company"> 
      </div> 
      <div class="form-group"> 
       <label for="FirstName">First Name</label> 
       <input name="first_name" type="firstname" class="form-control" id="exampleInputFirstName" placeholder="First Name"> 
      </div> 
      <div class="form-group"> 
       <label for="LastName">Last Name</label> 
       <input name="last_name" type="lastname" class="form-control" id="exampleInputLastName" placeholder="Last Name"> 
      </div> 
     </div> 
     <div class="col-md-6 zero-margin-bottom"> 
      <div class="form-group"> 
       <label for="exampleInputEmail1">Email address</label> 
       <input name="email" type="email" class="form-control" id="exampleInputEmail1" placeholder="Email"> 
      </div> 
      <div class="form-group"> 
       <label for="exampleInputPassword1">Phone</label> 
       <input name="phone" type="phone" class="form-control" id="exampleInputPhome" placeholder="Phone"> 
      </div> 
      <div class="form-group"> 
       <label for="country">Country</label> 
       <select name="country" class="form-control"> 
        <option value="">Select Country</option> 
        <option value="Abu Dhabui">Abu Dhabui</option> 
        <option value="...">Afghanistan</option> 
       </select> 
      </div> 
     </div> 
     <div class="col-md-12 zero-margin-bottom"> 
      <div class="form-group"> 
       <label for="comments">Comments:</label> 
       <textarea name="comment" class="form-control" rows="3"></textarea> 
      </div> 
      <button type="submit" class="btn btn-default submit btn-danger">Send Request</button> 
     </div> 
    </div> 
</form> 
+0

Я ничего не знаю о Kentico, но их сайт утверждает, что разработчики могут использовать стандартные элементы управления .Net. Я бы попробовал этот маршрут. Используете ли вы Visual Studio для создания части, над которой работаете? –

+0

Я не. Я беру разработанный в стиле Bootstrap HTML и интегрировал его в шаблоны внутри Kentico. Другая часть состоит в том, что мне нужно будет отправить форму в наш CRM, указав код ниже.

+0

Как сказано в сообщении электронной почты, если вы используете ASP.NET Web Формы, то весь текст HTML-страницы уже завернут в тег ''. Если вы добавите другую форму внутри своей страницы, то в стандарте HTML указывается, что внутренняя форма удаляется из DOM, поскольку она является незаконной. – krillgar

ответ

0

Удалите <form> тега, он не нужен. Если ваш стиль зависит от тега формы, добавьте другой класс в div, обернутый вокруг всех элементов формы. По умолчанию у вас не может быть <form>, вложенных в <form> с использованием разработки веб-форм asp.net. Модель разработки портала Kentico использует это, и это вызывает проблемы каждый раз, потому что тег <form> находится на шаблоне главной страницы в файловой системе (который НЕ рекомендуется изменять).

+0

Когда я удаляю тег формы и добавляю id = "contact_form" в div, который обертывает поля формы, проверка ошибки Bootstrap больше не работает. –

+0

Тогда вам может потребоваться добавить дополнительные классы, переопределить некоторые классы css или переопределить некоторые из обработчиков javascript для начальной загрузки. Получаете ли вы какие-либо ошибки JS в окне консоли? –

+0

Не удалось получить никаких ошибок JS и пока не удалось получить подтверждение. –

1

Проверка бутстрапа не зависит от формы тега. Он в основном добавляет класс .has-error к родительскому элементу. Используйте инспектор (F12 в Chrome), чтобы проверить вашу разметку, а также мужской класс. К родительскому элементу добавлен класс .has-error.

Bootstrap включает в себя стили проверки для ошибок, предупреждений и успехов указывает на элементы управления формой. Чтобы использовать, добавьте .has-warning, .has-error или .has-success к родительскому элементу. Любой .control-label, .form-control, и .help-block внутри этого элемента получат стили проверки .

Подробнее >>here.

Here рабочий пример.

+0

Этот пример был моей отправной точкой, однако тег формы следует за контейнером div. Когда я пытаюсь изменить тег формы на div, валидация больше не работает. –

Смежные вопросы