2017-04-06 63 views
1

我有這樣隱藏div元素,如果它是空的(ASP.NET MVC)

$('#display').click(function() { 
     var vacancyId = $("#vacancy").val(); 
     var model = { 
      vacancyId: vacancyId 
    }; 

     $.ajax({ 
    url: '@Url.Action("QuestionBlocks", "Questions")', 
    contentType: 'application/json; charset=utf-8', 
    data: JSON.stringify(model), 
    type: 'POST', 
    dataType: 'json', 
    processData: false, 
    success: function (data) { 
     var question1 = data[0] 

     $(".list").append('<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color:#ffcf00;border-radius: 5px;margin: 10px auto 0;;">' + question1.Question1 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question2 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question3 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question4 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question5 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question6 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question7 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question8 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question9 + '</div>' + '<div style="width:80%;font-size:20px;margin-top:15px;border-style: solid;border-color: #ffcf00;border-radius: 5px;margin: 10px auto 0;">' + question1.Question10 + '</div>'); 
     $(".list").find('div.section:empty').hide(); 
     } 
    }); 
}); 

Ajax調用但是一些div是空的,因爲從後端值爲空。

我需要隱藏空的div

我試試這個$(".list").find('div.section:empty').hide();但似乎沒有工作。

我在代碼中寫錯了什麼?

+2

你在哪裏添加類'section'你'div's –

+0

爲卡斯滕說,有被追加無節的div,嘗試'$(「名單」)兒童('DIV:空').hide();' – Pete

+0

對不起,我似乎明白我的錯誤。現在將嘗試一個解決方案 – Eugene

回答

1

這可以很容易地使用javascript來完成。在這種方法中,您將獲得所有div,檢查它們是否爲空,並相應地隱藏它們。

var req = document.getElementsByClassName('list'); 
for(j=0; j<req.length; j++) 
{ 
    var divs = req[j].innerHTML.getElementsByTagName('div');// got all the divs in the current element 

    for(i=0; i<divs.length; i++) 
    { 
     if(divs[i].innerHTML == "") 
     { 
     divs[i].style.display = 'none'; 
     } 
    } 
} 
+0

從頁 – madalinivascu

+0

所有的div他只需要「.list」類中​​的div。爲什麼所有的divs? –

+0

@madalinivascu修復它 –