Я использовал TypeFaster . Это не красиво, но одна приятная особенность в том, что он может загружать уроки в разных раскладках клавиатуры, таких как Colemak (файлы раскладки здесь ) или Dvorak.
Когда JQuery открывает диалоговое окно, он перемещает его за пределы формы.
Вот решение для этого:
Диалог пользовательского интерфейса jQuery с обратной передачей кнопки ASP.NET
в основном в ваш случай:
var dlg = $("#dialog").dialog({
autoOpen: false,
buttons: {
"OK": function() {
$(this).dialog('close');
}
}
});
dlg.parent().appendTo($("#yourformId"));
должен исправить это.
Я почти уверен, что пользовательский интерфейс jQuery вырывает раздел диалога из его обычного места в dom, а затем перемещает его в другое место. Это приведет к удалению вашего элемента ввода из родительского элемента формы. Вы не можете отправить форму без элемента формы, поэтому она терпит неудачу.
Я бы предложил переписать html как:
<div id="dialog">
<form method="POST" action="publish.php">
<input type="button" id="publishSettings" value="Publish Settings">
Publish Date
<input type="text" name="publishOn"><br>
Unpublish Date
<input type="text" name="unPublishOn">
<input type="submit" name="pubArticle" value="Publish">
</form>
</div>
Если кнопка publishSettings не должна находиться во всплывающем окне, вы можете переместить ее формы и просто зафиксируйте его значение в событии отправки и добавьте его как скрытый элемент ввода, прежде чем что-либо будет отправлено.
Удачи.