ASP.NET:单击按钮后显示jQuery对话框

时间:2013-04-17 12:04:16

标签: jquery asp.net vb.net serverside-javascript registerclientscriptblock

在我的ASP.NET页面上,我有一个按钮。点击服务器端后应生成一个div,表示jQuery对话框和相关JavaScript块的内容。但单击按钮后页面上既不包含div也不包含JavaScript。在点击时注册控件和脚本是否为时已晚?或者为什么不起作用?

'create JavaScript block
Dim strClientScript As String = String.Empty
Dim strMessageControlId As String = "jQueryDialog" & Me.MyContainer.Controls.Count
strClientScript &= "$(function(){" & NewLine
strClientScript &= "    $(""#" & strMessageControlId & """).dialog({" & NewLine
strClientScript &= "        bgiframe:true, " & NewLine
strClientScript &= "        autoOpen:true, " & NewLine
strClientScript &= "        modal:true, " & NewLine
strClientScript &= "        closeOnEscape:false, " & NewLine
strClientScript &= "        width:600, " & NewLine
strClientScript &= "        height:450 " & NewLine
strClientScript &= "    });" & NewLine
strClientScript &= "});"

'create div for the jQuery Dialog
Dim strHtml As String = String.Empty
strHtml &= "<div id=""" & strMessageControlId & """ title=""My title"">" & NewLine
strHtml &= strMessage & NewLine
strHtml &= "</div>"

'add the HTML to the page
Me.MyContainer.Controls.Add(New LiteralControl(strHtml))

'register the Javascript
Me.Page.ClientScript.RegisterClientScriptBlock(Me.GetType, "Key." & strMessageControlId, strClientScript, True)

1 个答案:

答案 0 :(得分:0)

我以前做过这个。它不适合你,但值得一试。 在页面上创建div元素并在其上放置“display:none”。在客户端使用jquery,为您的按钮添加单击事件。在click事件中附加数据或写一个函数到filland显示div或显示你想在其中显示的内容。真的没有理由做这个严重的一面。在你的点击jquery点击事件中,你可以链接你想要添加到div,样式等的所有属性,使它看起来像你想要的那样。如果您需要更好的解释,我会尝试找一个例子。