Это довольно простой способ заставить HTML5 выполнить валидацию для любой формы, но при этом имеет современный JS-контроль над формой. Единственное предостережение - кнопка отправки должна находиться внутри <form>
.
html
<form id="newUserForm" name="create">
Email<input type="email" name="username" id="username" size="25" required>
Phone<input type="tel" id="phone" name="phone" pattern="(?:\(\d{3}\)|\d{3})[- ]?\d{3}[- ]?\d{4}" size="12" maxlength="12" required>
<input id="submit" type="submit" value="Create Account" >
</form>
js
// bind in ready() function
jQuery( "#submit" ).click( newAcctSubmit );
function newAcctSubmit()
{
var myForm = jQuery( "#newUserForm" );
// html 5 is doing the form validation for us,
// so no need here (but backend will need to still for security)
if ( ! myForm[0].checkValidity() )
{
// bonk! failed to validate, so return true which lets the
// browser show native validation messages to the user
return true;
}
// post form with jQuery or whatever you want to do with a valid form!
var formVars = myForm.serialize();
etc...
}
К сожалению, необходимо будет предоставить обоих, как Visual Studio только знает для рассмотрения XML-документов для Intellisense.
Я пропускаю что-то? Я всегда комментирую, как обычно (использующий 3 наклонных черты или 3 метки (vb)), использую созданный в тегах XML и когда я использую блок, я получаю intellisense - я редко использую экстремальный xml файл.
При поиске C:\Windows\Microsoft.NET\Framework\v2.0.50727, Вы найдете, что все .net блоки, на которые можно ссылаться в приложениях, используют xml файлы. Visual Studio только обеспечит intellisense для блоков, если xml файл будет существовать. Например, если бы необходимо было закрыть Visual Studio, затем удалить System.Drawing.xml файл и затем вновь открыть VS, не должно быть никакого intellisense для того блока. Необходимо было бы тогда закрыть VS, скопировать его назад, и затем вновь открыть VS для intellisense для работы снова.