2015-08-20 4 views
1

Я пытаюсь скрыть 2 DIV на Ajax успеха, следуя кодКак скрыть несколько DIV на Ajax успеха

$(".editButton").click(function() { 
     var self = this; 
     var membershipid = $(this).attr('id'); 
     $.ajax({ 
      type: 'POST', 
      url: '@Url.Action("GetMembershipDetail","User")', 
      data: { "MembershipID": membershipid }, 
      success: function (data) { 
       $('#ddlStoreUpdate').val(data["fk_Store_ID"]); 
       $('#TxtTitleUpdate').val(data["MembershipTitle"]); 
       $('#TxtDescriptionUpdate').val(data["MembershipDescription"]); 
       $('#TxtTimeFrameUpdate').val(data["MembershipTimeFrame"]); 
       $('#TxtMembershipMinUpdate').val(data["MembershipMinVisit"]); 
       $('#chkUpdate').prop('checked', data["MembershipGroundLevel"]); 
       $('#HiddenMembershipID').val(membershipid); 

       if (data["MembershipGroundLevel"] == true) 
       { 
        alert("True"); 
        $("#TxtTimeFrameUpdate").val(0); 
        $(self).closest("#RowTimeFrameUp").hide() 
        $("#TxtMembershipMinUp").val(0); 
        $(self).closest("#RowMinFrameUp").hide() 
       } 
       else 
       { 
        alert("false"); 
        $("#RowTimeFrame").show("slow"); 
        $("#RowMinFrame").show("slow"); 
        var storeid = $("#ddlStore").val(); 
        $.ajax({ 
         type: 'POST', 
         dataType: 'json', 
         url: '@Url.Action("GetTimeFrame","User")', 
         data: { 'StoreID': storeid }, 
         success: function (data) { 
          $("#TxtTimeFrame").val(data); 
         }, 
         error: function (error) { 
          alert(JSON.stringify(error)); 
         } 
        }); 
       } 
      }, 
      error: function (data) { 
       alert(JSON.stringify(data)); 
      } 
     }) 
     $("#myModalUpdate").modal('show'); 
    }); 

Если условие работает хорошо, но Div (s) не скрывает Если удалить $ (Я) .closest() из второго DIV, первый ДИВ скрывает все хорошо, вопрос с множественным DIV

ответ

2

вы можете использовать class, чтобы скрыть его, как это:

$(".resetValueTo0").val(0); 
$(".divToHide").hide(); 

для этого, вы не» T нужно сделать это:

$("#TxtTimeFrameUpdate").val(0); 
$(self).closest("#RowTimeFrameUp").hide() 
$("#TxtMembershipMinUp").val(0); 
$(self).closest("#RowMinFrameUp").hide() 
0

Вы можете попробовать это:

Заменить этот код:

$("#TxtTimeFrameUpdate").val(0); 
$(self).closest("#RowTimeFrameUp").hide() 
$("#TxtMembershipMinUp").val(0); 
$(self).closest("#RowMinFrameUp").hide() 

Для этого:

$("#TxtTimeFrameUpdate").val(0); 
$(self).closest("#RowTimeFrameUp").each(function(){ 
    $(this).hide(); 
}); 
$("#TxtMembershipMinUp").val(0); 
$(self).closest("#RowMinFrameUp").each(function(){ 
    $(this).hide(); 
}); 
Смежные вопросы