我有一系列可编辑的列表,只需按一下按钮就可以转换成某种数据结构.当它变成某种数据时,我需要一起添加重复项.
例:
应该变成某种数据列表,最后应该是这样的:
这是我的尝试:
//button click event
$(".calculate").bind("click", function(e)
{
//get the correct parent of the button
var parent = $(this).closest("#calc");
//get relevant data
parent.find(".options").each(function(index, element)
{
var opt1 = $(this).children(".opt1").children("input").val(); //weight
var opt2 = $(this).children(".opt2").children("input").val(); //ingredient
});
});
Run Code Online (Sandbox Code Playgroud)
基本上我单击按钮,上面的脚本找到所有相关数据.
如何将其转换为多维数组或可以搜索重复项的对象列表?
当我尝试创建一个动态对象时,它似乎失败了,当我创建一个多维数组进行搜索时,我被inArray无法搜索它们所阻止.
问题回顾: 我能够获得用户数据没问题.将其转换为列表并将重复项添加到一起就是问题所在.
我在SPA中已经有一个404处理程序,可以正常工作。这里的问题是,例如Google链接到不再存在的旧页面。当用户看到自定义的404组件时,我想Google会获得200的确定,并继续认为该页面有效。
{
path: '*',
name: 'not-found',
component: NotFound // 404
}
Run Code Online (Sandbox Code Playgroud)
我让服务器重新路由到/,并让vue使用历史记录处理路由:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
这是带有php后端的标准Vue CLI安装。PHP当前仅用于API调用。
在这种情况下,是否可以让服务器返回404状态代码?
建议的解决方案? 服务器对前端发生的路由一无所知,但是我可以让webpack输出一个站点地图或类似的内容(可以由服务器验证),在标头中设置404,并让其加载显示404的SPA。可以,还是有更好的解决方案?
请注意, 我最终自动创建了一个站点地图,然后根据该站点地图检查了路线。如果路由不匹配,则将其重新路由到自定义404。这工作得很好,但是Google仍然有些困惑。
我通过jQuery加载一些HTML元素:
考虑这种情况:
<li>test</li> (1)
<li>test</li> (2)
<li>test</li> (3)
Run Code Online (Sandbox Code Playgroud)
如果我做:
$("body").find('li:last')
Run Code Online (Sandbox Code Playgroud)
我会得到最后一个li元素,我标记的那个元素(3)以及我是否总是按顺序添加可以正常的项目.但是,如果我在其间添加一个新元素:
<li>test</li> (1)
<li>test</li> (2)
<li>test</li> (4)<-
<li>test</li> (3)
Run Code Online (Sandbox Code Playgroud)
:最后不会这样做,因为我添加的元素不是列表中的最后一个.
我如何得到(4)的引用?
编辑:请,没有eq()解决方案,我需要这是动态的,我不能总是知道在上下文中添加元素的位置.