Не отвечающие входные данные в частичном представлении, содержащем форму в диалоге JQuery - PullRequest
2 голосов
/ 15 июня 2011

Проблема, с которой я столкнулся, заключается в том, что элементы, которые я отображаю в моей форме (входные данные, выпадающие списки и т. Д.), Полностью не отвечают, когда форма помещается в диалог. Я не могу щелкнуть их (даже выпадающие списки) и не могу изменить их значения (они не помечены только для чтения). Это меняется, когда я удаляю вложенные теги формы - все входы могут быть доступны правильно, если теги формы отсутствуют.

Как некоторый фон, форма находится в частичном представлении, которое отображается в диалоговом окне JQuery. К сожалению, мне нужна функциональность формы, так как я хочу легко получить доступ к коллекции форм на стороне контроллера (я использую MVC).

Кажется, это проблема, не зависящая от реализации, но я могу опубликовать некоторый код, если это поможет. Заранее спасибо!

РЕДАКТИРОВАТЬ: Это JQuery Я использую, чтобы открыть диалог с комментариями для некоторых из более неясных частей.

_detailsDialog = $("#modal-ProductDetails").dialog({
        autoOpen: false,
        draggable: false,
        modal: true,
        resizable: false,
        width: 'auto',
        title: 'Item Details',
        buttons: {
            "Add": function () { ItemsGridView.addItemToShoppingCartFromDialog(); $(this).dialog('close'); },
            "Cancel": function () { $(this).dialog('close'); }
        }
    });

    $('#itemSummary').load( //itemSummary is a div in the View
                _getEditItemViewUrl, //A URL pointing to the postback action
                { baseItemNumber: baseItemNumber },
                function () {
                    _detailsDialog.dialog('open');
                }
            );

Редактировать: Это частичный код вида:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Pandora.B2B.Web.Models.CatalogItemViewModel>" %>
<div>
<h3>Add / Edit Item</h3>
<% using (Html.BeginForm("EditItem", "CatalogAdmin", FormMethod.Post))
{ %>
<div class="validation-summary-errors">
</div>

<div class="floatLeft">
   <%: Html.TextBox("txtReqdDescription", Model.Description, new { @class = "editableField" }) %>
</div>
<% } %>
</div>

Ответы [ 3 ]

1 голос
/ 15 июня 2011

Убедитесь, что диалог фактически не скрыт за другим div.Также проверьте z-индексы формы и ее дочерних элементов и убедитесь, что они находятся выше z-индекса div, внутри которого они находятся.

0 голосов
/ 15 июня 2011

Вы уверены, что представление создает закрывающий тег для </form>?Если это не проблема, пожалуйста, используйте jsFiddle, чтобы создать пример кода и опубликовать его здесь.

0 голосов
/ 15 июня 2011

Если вы нажимаете вкладку несколько раз, можете ли вы выбрать / изменить любое из полей с помощью только клавиатуры? Возможно, существует какая-то проблема с наложением слоев, может быть, скрытый div поверх полей формы?

Трудно сказать, не видя никакого кода.

...