Уберите эту часть вашей разметки:
OkControlID="btnInvite" CancelControlID="btnCancel"
Обновление после комментария:
На этапе инициализации, на стороне клиента, выполняется этот фрагмент кода:
if (this._OkControlID) {
this._okHandler = Function.createDelegate(this, this._onOk);
$addHandler($get(this._OkControlID), 'click', this._okHandler);
}
Так что в основном он создает обработчик для функции _onOK:
_onOk: function(e) {
/// <summary>
/// Handler for the modal dialog's OK button click
/// </summary>
/// <param name="e" type="Sys.UI.DomEvent">
/// Event info
/// </param>
var element = $get(this._OkControlID);
if (element && !element.disabled) {
if (this.hide() && this._OnOkScript) {
window.setTimeout(this._OnOkScript, 0);
}
e.preventDefault();
return false;
}
},
как вы можете видеть, он вызывает e.preventDefault (); что приводит к тому, что нормальное поведение OKControl не выполняется, в то время как this.hide () закрывает само модальное всплывающее окно.
Я предлагаю вам прочитать ModalPopupBehavior .debug.js из набора инструментов управления, если вы хотите узнать больше.