2012-05-02 32 views
1

的第二個電話後,JQuery的對話框禁用我有在裏面jQuery的對話呈現幾個Telerik的DropDownList控件Telerik的DropDownList的對話框

這是一個「單頁」 ASP> NET MVC應用程序,所以我有一個網格記錄,每次用戶雙擊網格程序時,都會顯示jQuery對話框,該對話框使用Ajax調用控件來爲該對話框窗口渲染局部視圖,並將所有Telerik控件綁定到模型屬性。

當我打電話jQuery的對話框第一次,所有當我打電話jQuery的對話第二次工作正常

,打開對話框,結合模型情況不錯,但所有的DropDownList控件似乎被禁用。我試圖從jScript調用enable() - 它沒有幫助。

同樣問題的DatePicker控件發生,但在的DatePicker我可以手動編輯日期(文本區域內),但無法顯示日曆選擇

如此看來,jQuery的對話框Telerik的MVC控制的第二個呼叫後在這個對話框中放置了一個能夠顯示任何彈出窗口的功能(Telerik的DropDownList和DatePicker是相似的,當你點擊箭頭或日曆圖標時,他們需要顯示帶有項目列表或calandar的浮動DIV),但手動編輯文本在可編輯區域仍然有效。

該問題似乎與http://www.telerik.com/community/forums/aspnet-ajax/editor/radeditor-and-jquery-dialog.aspx非常相似,因爲它建議在對話框('open')方法之後使用onParentNodeChanged()。然而,在Telerik ASP.NET MVC Extnetions中並不存在,它是Telerik Rad(ASP.NET AJAX)控件的一部分,我不能從jScript調用它

ANy的想法?

+0

你究竟打開了那個窗口? –

回答

3

加入阿賈克斯部分意見時,我有一個類似的問題。當我加載視圖時,控件似乎可以正常加載,但它們沒有連接到telerik腳本,所以我需要在渲染後觸發它們。下面的代碼示例:

//Action AddItem returns partial view which contains some standard inputs and telerik date pickers 
@Html.ActionLink("Add item", "AddItem", null, new { @class = "addNewItem" }) 

<div id=itemRows></div> 

<script> 
$(".addNewItem").click(function() { 
    $.ajax({ 
     url: this.href, 
     cache: false, 
     success: function (html) { 
      $("#itemRows").append(html); 
     } 
    }); 
    //I need to trigger all the datepickers to enable them (so I give datepicker class dateTime) 
    $(".dateTime").tDatePicker({ format: 'd.M.yyyy' }); 
    return false; 
}); 
</script> 

用datepicker試一下,看看它是否有效,同樣的邏輯應該對下拉菜單起作用。

1

我們將此問題與TinyMCE和對話框autoOpen設置爲false。爲我們工作的修復程序。通過對話框的open事件是這樣的:

$(element).dialog({ 
    // some more options... 
    open: function (type, data) { 
     $(this).parent().appendTo($("form:first")); 
    } 
}); 
相關問題