问题标签 [partials]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
444 浏览

asp.net-mvc - Asp MVC 部分未验证

设想 :

Viewmodel dienstViewModel 包含一个 AdresViewModel

包含部分的视图:

当我最后按下提交按钮时,只有前 2 个文本框得到验证。我如何确保部分视图也得到正确输入的验证?

还是部分仅用于显示信息而不用于检索信息?

局部视图

调用视图的控制器方法

0 投票
1 回答
823 浏览

ruby-on-rails - 将哈希值动态传递给部分

我遇到了将哈希值动态传递给部分文件的问题。我在我的页面上显示了人名(这是部分)。哈希值是这样的:

我需要动态传递哈希值。我怎样才能做到这一点?在示例中,新的哈希是这样的:

我的代码

0 投票
4 回答
7219 浏览

templates - 在 Jade 视图中使用 javascript 代码 - if(variable) 显示未定义而不是传递

所以这是一个反复出现的问题,我没有找到关于 SO 的另一个例子,所以这里是:

在渲染 Jade 模板'variableName' undefined时,我什-if(variableName)至在模板中使用。

示例(我将其用作“信息”闪存消息的部分内容):

这将返回 'info' 未定义,而不是在没有 flash/info 消息时不呈现任何内容。有谁知道我做错了什么?

我知道typeof(variable) != 'undefined所提到的选项。如果我想做类似的事情,-if (typeof(req.session.user) != 'undefined')我必须做 3 个嵌套的 `if (typeof(req) != 'undefined'。这是我唯一的选择吗?

0 投票
2 回答
501 浏览

cakephp - CakePHP 有什么类似于 Symfony 的部分功能吗?

如果你想在视图中重用代码,Symfony 有两种基本机制:partials 和 slot。部分很好,因为您可以定义全局部分(您可以在任何模块中使用它们)和模块部分(它们仅在某个模块中可用)。

但是,在 CakePHP 中,您只有常规模板和元素,后者在每个视图中都可用,无论您在哪个模型/控制器中。

CakePHP 有类似 Symfony 的部分功能吗?例如,避免为模型重复表单代码会很好。您可以有两个“包含”通用表单的模板(添加和编辑)。

我知道您仍然可以使用元素,但是为模块提供“本地”元素目录似乎可以让事情更有条理。你能建议一个解决方法来模拟这个吗?

谢谢!

0 投票
1 回答
634 浏览

javascript - 为这种应用程序调用 javascript 和渲染部分的正确方法是什么(rails,有很多 javascript?)

在我的 Rails 3 应用程序中,我有许多带有表单的页面,用户可以在其中创建记录然后对其进行编辑。要创建记录,用户单击“添加记录”按钮,会弹出一个模式对话框,其中包含“新记录”表单。一旦用户填写表格并按下保存,模式对话框就会消失并且表格部分更新,显示新记录。要编辑记录,用户单击任何现有记录旁边的编辑链接,这会打开一个模式对话框,其表单与“新记录”表单类似,但标题为“编辑记录”和“保存编辑” , ETC。

现在,我正在使用两个部分进行此操作:表格部分和表单部分。表单部分根据@editing 变量是否为真显示“编辑”标题。

它目前的工作方式是,当用户单击“新建记录”按钮时,它有一个 onClick 函数,它可以做两件事。

1) jquery ajax 调用“新”操作创建必要的对象并呈现部分像这样:

2) 将 div 显示为模式对话框 (simplemodal) 的 jquery 调用。

单击对象的编辑按钮执行相同的操作,除了“编辑”操作将@editing 设置为 true,并且 Ajax 调用发送要编辑的对象的 id。

此外,当用户按下保存并保存对象时,“创建”和“更新”操作都执行以下操作:

'saved' 是一个 .rjs 文件,用于更新部分表格、重置表单并显示“已成功保存”消息。

我的问题是,基本上,我这样做对吗?进行这些调用的最新、最有效和最不引人注目的方式是什么?我是否仍应在我的操作中使用 page["#divname"].html(render partial) 类型调用?我是否仍应使用 rjs 文件重新加载部分内容并显示保存消息?如果没有,我该如何处理这些情况(加载部分等)?

非常感谢,如果您需要更多信息,请告诉我。

0 投票
1 回答
519 浏览

javascript - 如何有效地实现客户端javascript模板部分?

我想建立自己的,但我不确定最好的方法。部分是一个模板,它只是另一个更大模板的一部分,可以随意插入到多个其他模板中。模板本身是相当基本的,只是字符串提取和连接,但客户端部分让我有点难过。

以下是我想到的几种方法:

1,我可以编写一个 javascript 帮助函数,通过 ajax 将部分加载到我想的某种形式的本地存储中,并且所有需要该特定部分的后续模板将首先查看本地存储。我认为这种方法不是很安全,因为本地存储并不总是得到保证。如果我不能将它们保存到本地存储中,部分会导致太多的 ajax 调用。

2,我可以将它们全部放入我的主 html 文件中的脚本标签中。这会很好地工作,尤其是使用 head.js(以启用脚本标签的并行加载),但仍然 - 我认为每个脚本标签都是对服务器的单独调用,对吗?这并不能完全改善这种情况。

3,我可以将所有模板放入单个脚本标记(或我猜是 html)中并通过某种分隔符手动过滤...例如:“#template1(blabla template1 string) #template2(blablabla template2 string) 并放入这些字符串进入全局变量。这只会导致对服务器的一次调用,其余的都在客户端完成。

建议?我查看了现有的模板引擎,但我无法确定它们是如何做到的。代码相当复杂

0 投票
3 回答
511 浏览

ruby-on-rails - 当您拥有可重用的小部件时,在 Rails 中执行 UJS 的最佳方法是什么?

在我当前的项目中,我有几个实例,其中我有一个可重用的表单,它存在于 rails 部分中。此表单通过 ajax (:remote => true) 提交给特定的控制器。控制器做了一些事情,然后返回适当的 js.erb 以通过 javascript 修改页面。

当我只有一个视图时,这很好用。但是当这个可重用的部分存在于多个视图上时,问题似乎就会发生。在视图 1 中,我可能想在视图 2 中发出一组完全不同的 javascript 命令。

作为一个具体的例子,假设我有一个具有正常 CRUD 操作的注释控制器。

我现在有部分称为 _comments_box.erb。这个 _comments_box.erb 包含通过简单的一行提交评论的能力:

这提交给一个 comments_controller.rb 创建方法,看起来像这样:

create.js.erb 反过来向视图添加注释,可能对 DOM 进行大量其他更新。

假设我在名为 post_summary.erb 的视图中渲染 _comments_box.erb。现在我有了另一个视图 post_detail.erb,它需要相同的 _comments_box.erb。但是 post_detail.erb 要求我更新 DOM 上完全不同的 div 以响应新评论。

我需要为每个实例创建不同的 JS 响应。所以我可以:

  • 创建一个备用控制器方法,比如 create_2。将一些参数从 post_detail.erb 传递给 _comments_box.erb 到 _comments_box.erb 部分,以便它知道要触发哪个控制器方法。这将允许我拥有一个单独的文件 _create_2.js.erb,这将允许我独立操作 post_detail.erb 视图。
  • 完全忘记使用 js.erb,只使用普通的旧 AJAX 并返回 JSON,并在客户端完全处理 javascript 操作。

似乎选项 1 允许我继续使用 Rails 支持的 UJS,这很好。但也意味着我可能会到处添加很多重复的代码,这很烦人。有没有办法让我在继续使用 UJS 的同时优雅地做到这一点?

0 投票
1 回答
362 浏览

ruby-on-rails - Rails:使用本地人时保持部分干燥

我有部分被几个控制器重用。

现在我有这个部分设置来接受 2 个我不想做的对象。

当@article

当通过当地人

1)如果@article,我如何巩固我的部分不使用。
2)在我的js中。渲染部分的正确语法是什么,所以我不必说:partial => 'article/view' 并使用:locals?

0 投票
2 回答
17405 浏览

javascript - 将实例变量传递给 js.erb 文件(Rails 3 / jQuery)

我有一个“index.html.erb”文件,其中包含以下内容:

<%= 渲染@users %>

这将呈现“_user.html.erb”并输出一个用于对每个用户执行特定操作的按钮:

<%= link_to "action", action_path(user), :id => "#{user.id}_action", :remote => true) %>

我已经设置我的用户控制器通过查看“action.js.erb”来响应 AJAX 请求。

为了对部分中的特定用户执行 javascript 方法,我想知道如何将部分中的实例变量(例如 user.id)传递到 js.erb 文件中或在其中访问,例如:

0 投票
2 回答
1042 浏览

ruby-on-rails - Ruby on rails:如何在不对服务器进行 ajax 调用的情况下使用部分更新 div

当用户单击单选按钮时,我想用部分内容更新 div。现在该部分的内容是静态html(可能是表单)。因此,因为我没有任何数据要从服务器获取,所以我不愿意对服务器进行 ajax 调用,只是为了获取该部分并更新 div。这是我尝试过的。

但这不起作用,因为渲染替换了那里的整个部分以及在function loadControlPanel(type).

有什么办法可以克服这个吗?或其他更简单的解决方案?

谢谢肖纳克