Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置div可见_Javascript_Jquery - Fatal编程技术网

Javascript 设置div可见

Javascript 设置div可见,javascript,jquery,Javascript,Jquery,我要设置可见的Valeror。我什么都试过了,但没用。有人能帮我吗 <script type="text/javascript"> function ValidateTextBox(elem) { if (elem.val() == "") { return false; } else return true; } function Validat

我要设置可见的Valeror。我什么都试过了,但没用。有人能帮我吗

<script type="text/javascript">    
    function ValidateTextBox(elem) {
        if (elem.val() == "") {                
            return false;
        }
        else return true;
    }

    function ValidateForm() {
      var a = ValidateTextBox($('[id$=txtBxLangName]'));

      if (a)
          return true;
      else {                                          
          $('#valError').html('Please fill required field');
          $('#valError').show();
          return false;
           }
     } 
</script>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
   <div class="alert alert-error" visible="false" id="valError" runat="server">                       
   </div>                         
   <asp:TextBox ID="txtBxLangName" runat="server" CssClass="textEntry">
   </asp:TextBox>
   <asp:Button ID="btnNewAndUpdate" runat="server" Text="Save" OnClick="btnNewAndUpdate_Click" OnClientClick="return ValidateForm()" />
</asp:Content>

@迪克森的答案是正确的,但你还有另一个问题。当.net将文本框txtBxLangName呈现给客户端时,它可能没有该ID。尝试添加值为static的ClientIDMode,以确保ID设置为txtBxLangName

变成

 <asp:TextBox ID="txtBxLangName" runat="server" CssClass="textEntry" ClientIDMode="Static">
   </asp:TextBox>

它应该显示为.show,确保Valeror div中有一些内容,或者设置它的宽度、高度和背景,然后尝试显示块

$('#valError').css('display','block');

如果是这样的话,我相信visible=false将对您的工作产生负面影响。show@VisioN:不相关。.NET属性visible=false仍然意味着该元素根本没有被呈现,因此无法用jQuery显示它。没问题。很可能是上面的答案,作者是@DaveHogan@DavidHedlund不知道。这应该包括在答案中。然后,您只需执行以下操作:var a=ValidateTextBox$'txtBxLangName'+1.因为valError是在=server上运行的,所以我假设它还需要clientMode=Static。这个和@thedixon的修复都需要应用,jQuery才能工作。是的,@baros需要这两个答案来修复。
 <asp:TextBox ID="txtBxLangName" runat="server" CssClass="textEntry" ClientIDMode="Static">
 </asp:TextBox>
 <asp:TextBox ID="txtBxLangName" runat="server" CssClass="textEntry">
   </asp:TextBox>
 <asp:TextBox ID="txtBxLangName" runat="server" CssClass="textEntry" ClientIDMode="Static">
   </asp:TextBox>
$('#valError').css('display','block');