功能不执行

时间:2012-03-07 22:29:45

标签: c# javascript function webbrowser-control scriptmanager

我正在进程结束时执行两个js函数,以通知用户已成功添加条目并再次清除屏幕以进行数据输入。

一个是警报。警报出现(虽然隐藏了页面的其余部分。点击“确定”按钮后,警报消失,页面内容出现)。我想知道如何显示警报并显示页面内容。

我想要回答的主要问题是,即使我在Chrome中使用开发人员工具对其进行调试,其他功能也不会受到影响。此函数应清除表单上数据的内容,以便用户添加另一个条目。

我确保在此页面上有一个ScriptManager实例。

为了执行“clearInput()”函数,我需要做什么?

这是正在执行的js代码:

String s = "clearInput();";
                            ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "clear", s, false);

                            s = "User successfully added.";
                            s = "alert('" + s + "');";
                            ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "alert", s, true);

即使我删除了警报功能(上面的第二个或非上面的一个),我得到的只是左上角的功能名称,页面内容是必须的。

*以下新编辑*

我将脚本更改为以下内容。只要我不多次执行clearInput函数,它就可以工作。如果我再次尝试执行该函数,则列表中的值不会发生任何变化。 selectedIndex保持不变。这与严格使用jQuery语法时发生的情况完全相同。为什么不第二次取消选择索引?如果我将selectedIndex设置为“0”(列表中的第一个),则会发生同样的情况。它会在第一次这样做,但不是随后的时间。

有关如何使其适用于后续执行脚本的任何建议吗?

<script type="text/javascript">
        var lstLocation = null;
        var lstDept = null;
        var lstSecurityQuestionId = null;

        $(document).ready(function () {
            lstLocation = document.getElementById("<%= lstLocation.ClientID %>");
            lstDept = document.getElementById("<%= lstDept.ClientID %>");
            lstSecurityQuestionId = document.getElementById("<%= lstSecurityQuestionId.ClientID %>");
            }
        )

        function clearInput() {
            lstLocation.selectedIndex = "-1";
            lstDept.selectedIndex = "-1";
            lstSecurityQuestionId.selectedIndex = "-1";
            $("input[type=text]").val("");
            $('input:checkbox').removeAttr('checked');
        }
    </script>

0 个答案:

没有答案