我对c#和asp.net非常陌生,但是我在其他人的帮助下得到了一个半好的基础知识,然而,这让我完全陷入困境。
我有一个通过Oracle运行的搜索查询,这个工作正常,但我希望能够作为用户在X秒后终止查询(因为一些查询需要很长时间才能完成)
我在Javascript中捕获页面提交以显示加载程序gif,这又调用另一个显示模态和终止按钮的函数。
这是我的弹出式代码:
HTML:
<div id="my_popup">
<h2>Your search is taking a long time</h2>
<asp:Button ID="btnStopSearch" runat="server" Text="Stop Search" OnClick="StopSearch_Click" OnClientClick="__doPostBack(ctl00$MainContent$btnStopSearch, '');" />
</div>
的Javascript
function ShowLoading(e) {
var divBg = document.getElementById('blockScreen');
var divLoad = document.createElement('div');
var img = document.createElement('img');
img.src = 'images/ajax-loader.gif';
divLoad.setAttribute("class", "blockScreenLoader");
divLoad.appendChild(img);
divBg.appendChild(divLoad);
document.getElementById('blockScreen').style.display = 'block';
//calls modal
setTimeout(Moo, 2000)
}
function Moo() {
//alert("Moo");
jQuery('#my_popup').popup('show');
}
我还设置了一个点击事件StopSearch_Click
{
OracleConnection con = new OracleConnection(connstr);
using (OracleCommand objCmd = new OracleCommand())
try
{
con.Open();
objCmd.Connection = con;
objCmd.CommandText = "webportal.pkg_webportal.setStopProcessingFlag";
objCmd.CommandType = CommandType.StoredProcedure;
objCmd.Parameters.Add("username", OracleType.VarChar).Value = PortalUser.Value;
objCmd.Parameters.Add("status", OracleType.VarChar).Value = "Y";
objCmd.ExecuteNonQuery();
con.Close();
}
catch (Exception ex)
{
Response.Write("Error:" + ex.ToString());
}
finally
{
con.Dispose();
}
}
当在PL / SQL中运行并且终止搜索时,包本身工作正常,当它从页面本身运行时我无法触发按钮并且坦率地说我没有想法,我抬起头__doPostBack但是无法获得我的头围也是如此,所以任何帮助都非常感激,因为我的头靠在墙上。
由于