[英]Mixing javascript and C#
我有@model IEnumerable<HotelWithRating>
-一些酒店。 在視圖中,我有5個復選框-酒店星級。
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td><input type = 'checkbox' value="false" id= '1' onclick = ' ShowHotels();'/></td>
<td><input type = 'checkbox' value="false" id= '2' onclick = ' ShowHotels();'/></td>
<td><input type = 'checkbox' value="false" id= '3' onclick = ' ShowHotels();'/></td>
<td><input type = 'checkbox' value="false" id= '4' onclick = ' ShowHotels();'/></td>
<td><input type = 'checkbox' value="false" id= '5' onclick = ' ShowHotels();'/></td>
</tr>
</table>
我需要顯示例如5或4星級的酒店(如果選中了第四和第五復選框)。
應該是這樣的
<table class="Grid">
<tr>
<th>Name</th>
<th>Stars</th>
<th>Rating</th>
<th>Description</th>
</tr>
<script type="text/javascript">
function ShowHotels()
{
@foreach (var item in Model)
{
<text>
if (document.getElementById(item.Hotel.stars).checked == true)
{
<tr>
<td>@item.Hotel.Name</td>
<td>@item.Hotel.Stars</td>
<td>@item.Rating</td>
<td>@item.Hotel.Description</td>
</tr>
}
</text>
}
}
</script>
</table>
我發現了許多有關將javascript與代碼混合的主題,但還沒有決定。
最好先根據復選框選擇過濾模型。 可以在客戶端通過比較模型中每個酒店的屬性來完成。 否則,您也可以使用AJAX進行服務器端過濾(發送選定復選框的信息,然后服務器將向您發送過濾后的模型)。 服務器端過濾更好,因為您有大量需要調查的酒店。
然后,將此過濾后的模型分配給Grid或使用for循環使用JavaScript為過濾后的模型中的每個元素生成表。
如有問題,請隨時詢問任何其他問題。 謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.