Как изменить ширину диалогового окна Jquery после инициализации - PullRequest
18 голосов
/ 18 мая 2009

Я пытаюсь изменить ширину диалогового окна JQuery после его инициализации. Вот моя инициализация:

$(function() {
$("#dialogContainer").dialog({
title: 'Some title',
resizable: false,
bgiframe: true,
overlay: { opacity: 0.3, background: "white" },
position: [200, 200],
autoOpen: false,
height: 150,
width: 'auto'
modal: true,
buttons: {
  'ok': function() {
    $(this).dialog('close');
  }
}

});

});

И это то, что я делаю, чтобы изменить ширину в другой функции:

$("#dialogBox").dialog('option','width',700);

Но это не работает. Ширина диалогового окна - это ширина абзаца, который сначала отображается в нем. Я должен был сделать что-нибудь еще?

Вот HTML-код для диалога:

<div id = 'dialogContainer'>
  <p id = 'message'></p>
</div>

Ответы [ 7 ]

9 голосов
/ 18 мая 2009

Убедитесь, что вы используете ui.resizable.js и ui.resizable.css

3 голосов
/ 16 июля 2014

Инициализировать диалог с указанным параметром ширины: Ширина диалога в пикселях.

$( "#dialogBox" ).dialog({ width: 500 });

Получить или установить параметр ширины после инициализации:

// getter
var width = $( "#dialogBox" ).dialog( "option", "width" );

// setter
$( "#dialogBox" ).dialog( "option", "width", 500 );

Источник: http://api.jqueryui.com/dialog/

3 голосов
/ 01 марта 2014

ЗДЕСЬ КРАТКОЕ РЕШЕНИЕ, но помните, что это только для предопределенного диалога.

$( "#dialog" ).dialog({minHeight: 300,minWidth:500});
2 голосов
/ 11 февраля 2013
$("#dialogID").css("width", 160);
2 голосов
/ 02 июня 2009

Попробуйте это:

$("#dialogID").data("width.dialog", 160);
0 голосов
/ 19 июля 2016

Это работает для меня. Суть в том, чтобы изменить размер после открыть его:

$('#dialogContainer').
    dialog('open').
    dialog('option', 'width',   'auto').
    dialog('option', 'height',  'auto');

jQuery версия в моем случае - 1.11:

> Query.fn.jquery
> "1.11.1"
0 голосов
/ 25 июля 2013
$("#dialogweb").dialog({width:'90%'});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...