如何防止页面使用javascript回发

时间:2012-08-30 19:24:53

标签: javascript asp.net

我已经检查了其他代码,看起来我只需要添加 return false 来使其正常工作。但是,它不起作用,因为它仍然回发页面。

<asp:Button ID="_btnSearch" Text="Search" 
            onclientclick="CheckForEmptySearchBox()" />

<script type = "text/javascript">
    function CheckForEmptySearchBox() 
    {
        var boxContent = document.getElementById
          ("_ctl0_contentMain__lvTSEntry_ctrl0__txtClientName").value;
        if (boxContent == null || boxContent == "") {
            alert("Please enter search criteria");

            return false;
        }
     }  
</script>

2 个答案:

答案 0 :(得分:5)

onclientclick的来源是接收null而不是false,因为您没有返回函数调用的结果。

onclientclick="return CheckForEmptySearchBox()" 

答案 1 :(得分:1)

您可以在Form上添加全局检查,这可以在后面的代码上完成:

    if (Page.EnableEventValidation)
    {
        if (string.IsNullOrEmpty(Page.Form.Attributes["onsubmit"]))
        {
            Page.Form.Attributes["onsubmit"] = "return CheckForEmptySearchBox();";
        }
    }