2017-12-02 202 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