点击按钮隐藏div

时间:2013-03-20 18:04:16

标签: javascript jquery asp.net html

当用户点击“评论”按钮时。

<input id="SubmitCommentsToInvoice" type="button" value="Comments" onclick="ShowCommentBox('<%: item.DBId %>', '<%: item.LabourOrPlant %>', '<%: item.ActivityDescription %>')" />

使用提交按钮加载文本区域。当用户完成输入数据并点击“提交”后,我希望该框消失。(返回正常屏幕查看)

    <div id="dialog" title="Comments"  style="display:none;">   
    <textarea id="BlankBox" type="text" runat="server" rows="7" 
     maxlength="2000" />     
    <input id="SubmitComment" type="button" value="Submit"
                    onclick="SubmitButton()" />  
     </div> 

    function SubmitButton() {
                var commentBoxData = $('#<%=BlankBox.ClientID%>').val();
                WorkItemMgr.CommentBoxForInvoiceUpdates(id, LabouringOrPlanting, commentBoxData, testForSuccess);
            }

            function testForSuccess(CommentSuccessfullyUpdated) 
            {
                if (CommentSuccessfullyUpdated == "TRUE") 
                {
                    //$('#' + IdCommentBox).hide();
                    // $('#<%=BlankBox.ClientID%>').hide(); just hides comment box need to hide entire thing
                    $("#dialog").dialog({ modal: true }).hide();
    //IN HERE I WOULD LIKE TO HIDE THE DIV (MY ATTEMPTS SEEN ABOVE)
                }
                else if (CommentSuccessfullyUpdated == "False") 
                {
                    showLoadingImage.src = "../Images/X.png";
                }
            }

我的尝试隐藏了textarea,但我想再次隐藏整个div并恢复正常查看屏幕(摆脱模态:true)

6 个答案:

答案 0 :(得分:1)

我不认为这条线正在按照你的想法行事:

$("#dialog").dialog({ modal: true }).hide();

这告诉对话框插件将#dialog初始化为新对话框(模态),然后告诉jQuery隐藏整个事物。如果此时#dialog 已经已经一个模态对话框,而您只想隐藏它,请尝试以下操作:

$("#dialog").dialog("close");

这告诉对话框插件隐藏(或关闭)现有对话框。

通常,您希望使用插件的本机功能,而不是尝试在其中应用其他功能。在这种特殊情况下,最好告诉jQuery UI Dialog隐藏自己而不是尝试使用jQuery(它不知道对话框插件)来隐藏div,因为它不知道是否有任何“特殊”的东西div(有另一个插件正在使用它... jQuery UI Dialog)。

答案 1 :(得分:1)

如果你使用jQuery ui对话框,那么你应该使用close method

$("#dialog").dialog('close');

答案 2 :(得分:0)

使用jQuery:

$("#div_id").hide();

答案 3 :(得分:0)

在jQuery中

 $('#BlankBox').hide();

在javascript中

document.getElementById("BlankBox").style.display='none';

答案 4 :(得分:0)

如果您正在使用jQuery UI对话框,请尝试使用:$("#dialog").dialog({ hide: 1 });

答案 5 :(得分:0)

试试这个:

<div id="dialog" title="Comments"  style="display:none;">   
  <textarea id="BlankBox" type="text" runat="server" rows="7" maxlength="2000" />     
  <input id="SubmitComment" type="button" value="Submit"/>
</div> 

jQuery将是:

$(function(){
   $('#SubmitComment').click(function(){
      $(this).closest('#dialog').hide();
   });
});