Возможный дубликат:
Удалить близкую кнопку на jQueryUI Диалоговом окне?Я пытаюсь сделать диалоговое окно, которое требует, чтобы пользователь согласился на условия перед продолжением и не хочет позволять пользователю просто нажимать 'X' в правом верхнем углу диалогового окна для закрытия. Я хотел бы потребовать, чтобы пользователь нажал 'I agree'.
Там какой-либо путь состоит в том, чтобы отключить 'X' в диалоговом окне?
Разъяснение: я просто использую стандартный jQuery диалоговое окно UI: $ .dialog ().
Я предполагаю, что вы используете jQuery ui.
Если так, присоедините обработчик событий BeForeClose и верните false от него, если кнопка согласия не была нажата. Вы также можете использовать CSS, чтобы установить кнопку X в {display: none}
var agreed = false; //has to be global
$("something").dialog({
buttons: {
'Apply': function () {
agreed = true;
$(this).dialog("close");
}
},
beforeClose: function () {
return agreed;
}
});
Насколько ваша задача запрещает пользователю нажать X, я бы порекомендовал один из нескольких подходов:
Надеюсь, один из тех, кто выходит в правильное направление ...
Ваши предположения неверны. Защищенные и открытые члены «передаются». Частные участники - нет. Насколько мне известно, это характерно для многих языков ООП.
-121--4180445-Это все объясняется в спецификации
http://www.w3.org/TR/CSS2/visudet.html#blockwidth
O.O
По существу, auto означает, принимая во внимание все остальные указанные набивки, границы и поля, заполнить оставшееся пространство (при условии, что только ширина набора к auto). Так что эффективно 100% минус границы, набивка и поля.
Чтобы исправить, просто установите его, чтобы он соответствовал другим элементам, или поместите их все в содержащий элемент с заданной шириной.
-121--2938695-Если диалоговое окно является обычным, невозможно запретить пользователю закрывать окно.
Можно использовать модальный плагин jQuery, например jqModal .
Однако вы также не можете запретить пользователю закрывать главное окно.
EDIT : При использовании диалогового окна пользовательского интерфейса jQuery можно добавить следующее правило CSS:
#someId .ui-dialog-titlebar-close {
display: none;
}
Необходимо установить для closeOnEscape
значение false
.
Также почему вы заставляете пользователя нажать Я согласен
?
Почему нельзя обращаться с закрытым окном так, как если бы вы не согласились?
Если вы используете Alert
, возможно, вы должны рассмотреть , подтвердите
вместо этого:
if (!confirm("Click OK to confirm that you agree to the terms and conditions.")) {
// they didn't click OK
} else {
// they did.
}
или, используйте плагин Как упомянул слакс