将ASP.NET元素动态添加到JQuery对话框中
本文关键字:JQuery 对话框 添加 动态 ASP NET 元素 | 更新日期: 2023-09-27 18:26:35
我正在JQuery对话框中放置一些ASP.NET html元素(用于上载文件)。
我的问题:当我单击按钮上传文件时,什么都没有发生。页面加载后,我会动态创建查询对话框。我的解决方案是将HTML/ASP元素(用于上传文件)放在页面底部的div中&将其显示设置为无。
然后在打开对话框时,我将HTML/ASP元素移动到JQuery对话框中。但我的问题是,当我单击ASP.NET按钮从对话框中上传文件时,什么都没发生?
请注意,如果我在JQuery对话框外部单击该按钮,则会成功上载文件。
出了什么问题&我该怎么解决这个问题?有没有一种更简单的方法可以在页面加载后将ASP.NET代码添加到JQuery对话框中?
这是在身体
<div id="test">
<input class="ui-button ui-widget ui-state-default ui-corner-all
ui-button-text-only"
style="display: inline-block;" id="fileUpload" type="file" Runat="server"
NAME="fileUpload"/>
<asp:button id="btnSave" OnClick="bt1Clicked" style="display: inline;"
class="ui-button ui-widget ui-state-default ui-corner-all
ui-button-text-only"
runat="server" Text="Upload File" ></asp:button>
<asp:label id="lblMessage" runat="server" style="height:20px;width:390px;"
</asp:label>
</div>
然后打开对话框,我抓取上面的HTML&将其移动到对话框中:
$(this.dialog).dialog('open' function()
{
var e = $("#test");
$(body).remove(e);
$(this).append(e);
});
jQuery UI对话框在文档的最后创建对话框元素,就在关闭</body>
元素之前。因此,当你打开对话框并将内容div#test
移动到对话框中时,它就在<form>
之外,不再适用于需要它的asp.net。
尝试创建对话框并将其移回<form>
元素中:
$("#myDialog").dialog({
...
}).parent().appendTo($("form"));