2017-12-02 257 views
0

嗨我有一個問題是可能有功能來顯示我的表後按下按鈕,因爲現在它總是在?我嘗試過一些中頻功能,但他們沒有工作。 我的代碼:MVC:按下按鈕後顯示錶

@using (Html.BeginForm("Search", "Home", FormMethod.Post)) 
    { 
     <br /> 
     <span style="font-weight: bold">Tytuł filmu:</span> @Html.TextBox("VideoName") 
     <input type="submit" value="Szukaj" class="btn-primary" /> 
     <br /> 
     <br /> 
     <table cellpadding="0" cellspacing="0"> 
      <tr> 
       <th> 
        @Html.DisplayNameFor(model => model.ImageUrl) 
       </th> 
       <th> 
        @Html.DisplayNameFor(model => model.VideoName) 
       </th> 
      </tr> 

      @foreach (var item in Model) 
      { 
       <tr> 
        <td> 
         @Html.DisplayFor(modelItem => item.ImageUrl) 
        </td> 
        <td> 
         @Html.DisplayFor(modelItem => item.VideoName) 
        </td> 
       </tr> 
      } 
     </table> 
    } 
+0

所以,你想一個表單提交的結果加載到同樣的看法?提交後,原始表單也在同一頁面上? – Jasen

+0

是的,這一切都發生在一個視圖 – mariie

回答

0

如果你把你的標記條件塊內如下:

@if (true) 
{ 
    @* PUT MARKUP HERE *@ 
} 

然後當if條件爲真標記纔會出現。

或者,您可以使用客戶端代碼來簡單地隱藏標記。我不知道哪個最好,因爲你沒有提供任何關於你在做什麼的細節。

而不是說THE按鈕,也許你應該已經談過你有什麼樣的按鈕以及它應該做什麼。如果它在服務器端運行,請使用我的第一個建議。如果需要爲客戶端工作,請使用我的第二個建議。

+0

該按鈕是用於搜索是在我的項目網站上,每當我在文本框中鍵入一個短語,然後單擊搜索它應該會顯示我的電影 – mariie

+0

好吧,那並沒有澄清我所問的任何東西。我猜你想讓它顯示在客戶端,在這種情況下,只需給你的表單一個像「display:none」的樣式。然後你需要客戶端腳本才能看到它。 –

0

您可以有一個按鈕來切換表格的可見性,在按鈕onclick事件上調用下面的函數來顯示或隱藏表格。

function toggleTable() { 
    var lTable = document.getElementById("YourTableId"); 
    lTable.style.display = (lTable.style.display == "table") ? "none" : "table"; 
} 
0

你可以做,在許多方式,

  • 的Javascript:

    的document.getElementById( 'MYTABLE')的style.display = '塊'。 給你的表中的ID,並設置其顯示到none;開始,然後使用該按鈕的JavaScript單擊切換臺顯示器block;

function buttonClick(){ 
 
    document.getElementById('myTable').style.display = 'block'; 
 
}
<table id='myTable' style='display:none;'>...</table> 
 
<input type="submit" value="Szukaj" class="btn-primary" onclick='buttonClick()' />

注:
- 它可以如果你正在使用jQuery
- 你可以使用事件監聽器按鈕點擊

  • 服務器端代碼: 在你的操作方法設置的TempData或ViewBag變量,然後在HTML檢查,如果該值存在,如果真顯示錶

我相信還有很多其他的方式來這樣做,但其中大部分將圍繞我列出的兩個想法。

0

你有幾個很好的答案,但它取決於你正在努力完成的。我已經使用了各種已提供的內容。你提到在點擊按鈕上顯示錶格。如果再次點擊該按鈕,您是否還需要隱藏表格?如果是這樣,客戶端jQuery和.toggle()可以幫助。

$(document).ready(function(){ 
 
    $("button").click(function(){ 
 
     $("#myTable").toggle(); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<button>Toggle</button>  
 
<table id="myTable" style="border: 1px solid black; display: none"> 
 
    <tr> 
 
    <th>Header 1</th> 
 
    <th>Header 2</th> 
 
    </tr> 
 
    <tr> 
 
    <td>Data 1</td> 
 
    <td>Data 2</td> 
 
    </tr> 
 
</table>

+0

是的,但它必須另外顯示我的表格搜索結果 – mariie