Jquery alertbox被自动禁用

本文关键字:alertbox Jquery | 更新日期: 2023-09-27 17:51:23

我已经在上面写了代码ascx脚本:

<script src="JScripts/jquery.alerts-1.1/jquery.alerts.js" type="text/javascript"></script>
<script>
$(function() {
        $('#ImageButton1').click(function() {
            jAlert('Please enter a valid Suggestion ID.', 'Case Entry');
        });
    });
</script>

背后的代码:

Page.ClientScript.RegisterStartupScript(this.GetType(), "Window", "callAlert();", true);

问题是警报框在页面完全加载一段时间后自动禁用

点击OK按钮后警报框被禁用的原因是什么,以及如何以适当的方式调用callAlert函数

Jquery alertbox被自动禁用

如果您正在使用母版页面或页面,那么您将无法获得按钮的客户端Id,因为您声明它应该声明为$('#<%=ImageButton1.ClientID%>')$('[id$=ImageButton1]'),希望它将解决您的问题。

$(document).ready(function(){
 $('#<%=ImageButton1.ClientID%>').click(function() {
            alert('Please enter a valid Suggestion ID.', 'Case Entry');
        });
});

您可以尝试将以下行放在函数

之前
$(document).ready(function() {

这将使它:

$(document).ready(function() {
        $('#ImageButton1').click(function() {
            jAlert('Please enter a valid Suggestion ID.', 'Case Entry');
        });
    });
 });

如果您等到页面准备好,警告框将不会被覆盖(我希望x))。

另外,当您检查该文本框时,检查条件是否为假,然后给出警告。
条件不为假吗?构建一个检查来检查条件是否真的为真。如果是这样吗?定向。

编辑:

var answer = Confirm: ("This page will now redirect. Are you ready?")
if (answer)
//redirect
else
return

好,所以首先要理解$(function(){...$(document).ready(function() {...是等效的,并且在页面完全加载之前,两者中的任何内容都不会执行。换句话说,没有必要使用

Page.ClientScript.RegisterStartupScript(this.GetType(), "Window", "callAlert();", true);

可以移除。另外,我看到你可能正在使用web表单。请注意,将呈现的Id属性不等于控件属性的Id 。换句话说,如果您有一个Id为ImageButton1runat="server"控件,那么在jQuery中使用语法$('#ImageButton1')将不起作用。

考虑到这一点,我在下面添加了一个使用基于类属性的选择器的示例。
<script type="text/javascript">
    $(function () {
        $('.ImageButton1').click(function (e) {
            var text = $('.TextBox1').val();
            var redirect = true;
            if (!text) {
                redirect = confirm('Empty...are you sure?');
            }
            if (redirect) {
                window.location.href = 'http://your-redirect-here.com';
            }
        });
    });
</script>
<input class="TextBox1" type="text" />
<input class="ImageButton1" type="button" value="Click" />

那应该能把你带到你想去的地方。如果您有任何问题,请告诉我。

var answer = Confirm: ("This page will now redirect. Are you ready?")
if (answer)
{
   //redirect
} else
{
     return false;
 }

把这个放到jAlert Box后:

return false;

并像这样调用函数:

return callAlert();