标签: partial-views

仅在启用javascript时隐藏元素

我有一个视图,显示如下文本框:

@Html.TextBoxFor(m => m.CodeGuest, new {style = "display: none"})
Run Code Online (Sandbox Code Playgroud)

它通过javascript显示(因此用户单击一个复选框).

如果未启用javascript,我必须删除此行(style = "display: none"),以便默认显示文本框.

javascript partial-views razor asp.net-mvc-3

2
推荐指数
1
解决办法
2604
查看次数

如何在ASP.NET MVC3中的控制器中返回局部视图?

我有一个控制器,其中一个方法(操作)访问我的项目数据库.该方法检查项目类型.仅当从我的数据库中检索的项目是特定类型时,如何显示部分视图?

控制器动作示例:

public ActionResult CheckItem(Koko model)
{
    var item = db.Items.Where(item => item.Number == model.Number).First();
    if(item.Type=="EXPENSIVE")
    {
       //show partial view (enable my partial view in one of my Views)
    }
}
Run Code Online (Sandbox Code Playgroud)

controller partial-views asp.net-mvc-3

2
推荐指数
1
解决办法
2万
查看次数

不从局部视图收集MVC3数据

我正在MVC3中编写一个调查应用程序.我有这个课(简化):

public class Survey
{
    public Respondent Respondent { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在我看来:

@model Survey

// bla bla bla

@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)
    @Html.Partial("_Respondent", Model.Respondent) 
}
Run Code Online (Sandbox Code Playgroud)

当我发回它时,调查.Respondent = null :(

[HttpPost]
public ActionResult Survey(Survey survey)
{
    return RedirectToAction("Index");
}
Run Code Online (Sandbox Code Playgroud)

_Respondednt局部视图的简化代码:

@model Mercer.FITT.Respondent
<fieldset>
    <legend>Respondent Information</legend>
        <table>
            <tr>
                <td>
                    @Html.LabelFor(model => model.Name)
                </td>
                <td>
                    @Html.EditorFor(model => model.Name)
                    @Html.ValidationMessageFor(model => model.Name)
                </td>
            </tr>
            <tr>
                <td>
                    @Html.LabelFor(model => model.JobTitle)
                </td>
                <td>
                    @Html.EditorFor(model => model.JobTitle)
                    @Html.ValidationMessageFor(model => model.JobTitle)
                </td>
            </tr>
        </table>
</fieldset>
Run Code Online (Sandbox Code Playgroud)

如果我摆脱局部视图并将部分视图内容复制到主视图中,一切都很好.知道为什么不从局部视图中收集数据吗?也许我应该以不同的方式调用部分视图? …

c# partial-views asp.net-mvc-3

2
推荐指数
1
解决办法
173
查看次数

渲染部分时,Rails 3.0未定义局部变量

我正在使用Rails 3.0.20应用程序,我正在尝试通过部分传递局部变量,并且它显示"未定义的局部变量"我已经查看了此问题上的其他帖子并且无法修复它.

这是我要求渲染的意思

    = f.fields_for :current_positions do |builder|
        = render :partial => 'current_position_fields', :locals => {:f => builder, :foo => 'hi'}
Run Code Online (Sandbox Code Playgroud)

这是我的偏爱

%tr.pos_start
    %td
        = foo
        = f.hidden_field :id, class: "pos_id"
        = f.label :name, "Position Name"
    %td= f.text_field :name
%tr.pos_loc
    %td= f.label :location, "Position Location"
    %td= f.text_field :location
%tr.pos_end
    %td= f.label :year, "Position Year"
    %td= f.text_field :year
    %td.fields
        = link_to_remove_fields "DEL", f
Run Code Online (Sandbox Code Playgroud)

错误消息是

undefined local variable or method `foo' for #<#<Class:0x00000008d4a050>:0x00000008d3c590>
Run Code Online (Sandbox Code Playgroud)

如果我= foo从代码中取出其他所有工作.

haml ruby-on-rails partial-views ruby-on-rails-3

2
推荐指数
1
解决办法
3062
查看次数

动作返回部分视图和模型

我是 MVC 3 的新手,我有一个关于正确方法的问题。

想象一下我有一个模型:

public class MyCustomModel
{
       [Required]
        public string UserName { get; set; }

        [Required]
        public DateTime? Birthdate { get; set; }

        [Required]
        public string City {get;set;} //To partial view

        [Required]
        public string Street {get;set;} //To partial view  
  }
Run Code Online (Sandbox Code Playgroud)

在这里我有一个观点

@Html.TextBoxFor(m => m.UserName) @Html.TextBoxFor(m => m.BirthDate) @Html.Action("LocationGroup", "Home") //这里应该渲染城市和街道

我的部分视图会有类似的东西:@Html.TextBoxFor(m => m.City) @Html.TextBoxFor(m => m.Street)

这是控制器中的操作:

    [ChildActionOnly]
    public ActionResult LocationGroup()
    {
        MyCustomModel model = new MyCustomModel (); //Should i really instantiate a new instace of the model??? …
Run Code Online (Sandbox Code Playgroud)

action partial-views asp.net-mvc-3

2
推荐指数
1
解决办法
2万
查看次数

从部分视图向视图头添加css,js或其他内容

我发现了一些与此相关的问题,但通常有许多不同的答案,它们看起来都非常混乱和复杂.

如果这是需要做的事情,那么好吧我最好坐下来解决它.

我想知道最简单和最有效的方法是从部分视图向头部添加内容.

我需要这样做的原因是我需要在每个页面上使用某些java脚本和jquery,并且它在页面之间有所不同.我不想只在_layout视图中添加它们.

partial-views asp.net-mvc-4

2
推荐指数
1
解决办法
2万
查看次数

MVC4:嵌套的部分视图丢失模型数据

在MVC4项目中,我使用部分视图,即使用ViewModel并在其上具有GET Form。在Controller动作中,我希望ViewModel对象包含一些数据。当此部分放置在普通(.cshtml)视图上时,我通过Controller操作中的预期ViewModel对象接收了数据。但是,将此部分放置在另一个部分视图上时,由于某种原因,控制器操作中的ViewModel对象为空。当我逐步完成HttpGet表单的创建时,传入的模型不是空的,但是当调用GET控制器操作时,该模型为空。

有人知道原因吗?这是我不知道的某些MVC行为吗?谢谢!

部分:

@model ViewModel
    @if (Model != null)
    {
        using (Html.BeginForm("DoSomething", "Home", FormMethod.Get))
        { 
            @Html.HiddenFor(m => m.Object)            
            <input id="btnSend" type="submit"> 
        }
    }
Run Code Online (Sandbox Code Playgroud)

其他部分:

@using OtherViewModel.ViewModel
@Html.Partial("The Partial", Model.ViewModel, ViewData)
Run Code Online (Sandbox Code Playgroud)

风景:

@Html.Partial("_TheOtherPartial", Model.OtherViewModel, new ViewDataDictionary(ViewData) {
                TemplateInfo = new System.Web.Mvc.TemplateInfo { HtmlFieldPrefix = "prefix" }
    })
Run Code Online (Sandbox Code Playgroud)

控制器

[HttpGet]
[AllowAnonymous]
public ActionResult DoSomething(ViewModel data)
{
}
Run Code Online (Sandbox Code Playgroud)

c# partial-views viewmodel asp.net-mvc-4

2
推荐指数
1
解决办法
5400
查看次数

如何使用 AJAX 渲染局部?Laravel 5.2

我想列出有关存储在 MYSQL 数据库中的停车位的信息的情况。我正在使用 AJAX 调用 API 端点 (/api/spots) 并返回一个点列表。我使用刀片语法为信息布局创建了一个局部视图(partials/Spot.blade.php)。

我想知道是否有一种方法可以创建一个控制器方法,该方法将返回部分视图并将其呈现到页面的一部分,而无需返回服务器。这可以使用我的 partials/Spot.blade.php 吗?也许我应该创建一个方法将其中的所有 HTML 数据作为字符串返回,然后 get JS 将其添加到 DOM 中?

我目前的做法是在页面最初加载时渲染 partials/Spot.blade.php,并使用 CSS 将其从屏幕上移除。然后在对服务器的 AJAX 调用之后,我在这个隐藏的部分中抓取 HTML 并使用 REGEX 将数据放置在布局中。不过这看起来有点脏。只是想知道其他人是如何解决这个问题的。

您的反馈将不胜感激,

马特

ajax partial-views laravel laravel-5.2 laravel-blade

2
推荐指数
1
解决办法
9222
查看次数

Ruby on Rails 呈现部分未定义的局部变量

我的 ruby​​ on rails 应用程序中有一个更改头像弹出窗口。我正在尝试将它用于多种模型,例如更改个人资料图片或产品图片。

我创建了一个视图并尝试在 user.html.erb 文件中使用如下参数打开它:

<div id="myModal_change_avatar" class="modal-dialog fade-scale">
 <div class="modal-content">
  <div style="height: 100%;width: 100%" id="id_model_content">
   <%= render partial: 'change_avatar/index', locals: { par:'param'} %>
  </div>
 </div>
</div>
Run Code Online (Sandbox Code Playgroud)

在我的 _index.html.erb 文件中,它位于 views/change_avatar 下:

<h1><%= par %></h1>
Run Code Online (Sandbox Code Playgroud)

但是,当我打开 user.html.erb 文件时,我得到“未定义的局部变量或方法‘par’”。

我看不到我错过了什么。

有什么建议 ?

谢谢。

ruby ruby-on-rails partial-views partial

2
推荐指数
1
解决办法
963
查看次数

带有可选变量的 Rails 部分不起作用

我不确定这里发生了什么,但以下内容会在渲染时引发错误:

<%= render 'clients/clients_table', special: true %> 
Run Code Online (Sandbox Code Playgroud)

在我的部分中,我有:

<% if defined?(:special) %>
    <p><%= special %></p> <!-- line with error -->
<% else %>
    <p>No</p>
<% end -%>
Run Code Online (Sandbox Code Playgroud)

这抛出错误:

undefined local variable or method `special' for #<#<Class:0x007fa20fbb0310>:0x007fa20cb986a0>
Run Code Online (Sandbox Code Playgroud)

当我尝试显示时,local_assigns.has_key?(:special)它也显示false. 知道发生了什么吗?

ruby-on-rails partial-views

2
推荐指数
1
解决办法
267
查看次数