Javascript 如何从多个元素中选择一个元素克隆到单独的部分?(将其硬编码,以节省时间和资源)
我希望这会有意义,因为我不能使用JS fiddle,因为它不支持C#模型(至少我说不出来)。基本上,当一个产品被选中时,我正在尝试将一个div中的产品克隆到另一个div 以下是html和c#: 正如你所看到的,我把所有的li都打开了,这样他们就有了ID,比如产品1。现在,如果我单击Product1(或者实际上是它的两个,但你们都知道),它会将Product1克隆到另一个div。但是,有超过50个产品。所以我知道,与其一遍遍地复制和粘贴这些代码,不如用一种更简单的方法 我是初学者,如果答案显而易见,我很抱歉。我为自己在没有帮助的情况下走了这么远而感到自豪!(后台朋友做了C#的事情,我只是做jQuery和JS!)如果有人能告诉我从哪里开始,给我一个提示,或者给我一个JS Fiddle的例子作为指导,我会非常感激。我真的很喜欢学习JavaScript,希望有一天能够为这个很棒的社区做出贡献 另外,如果其他人已经回答了这个问题,请链接我,我会尽快删除。我尝试了各种搜索词,但没有找到匹配的词,但我可能用错了词。试试-Javascript 如何从多个元素中选择一个元素克隆到单独的部分?(将其硬编码,以节省时间和资源),javascript,jquery,Javascript,Jquery,我希望这会有意义,因为我不能使用JS fiddle,因为它不支持C#模型(至少我说不出来)。基本上,当一个产品被选中时,我正在尝试将一个div中的产品克隆到另一个div 以下是html和c#: 正如你所看到的,我把所有的li都打开了,这样他们就有了ID,比如产品1。现在,如果我单击Product1(或者实际上是它的两个,但你们都知道),它会将Product1克隆到另一个div。但是,有超过50个产品。所以我知道,与其一遍遍地复制和粘贴这些代码,不如用一种更简单的方法 我是初学者,如果答案显而易见
$(".l-row__item").on("click", function () {
var offercart = $(this).clone();
将确实应用于每一行项目。您应该使用,在示例中,我添加了产品
css类
当然,您可以在数据-*
属性中存储一些信息,如产品id
<%foreach (var product in Model.Products){%>
<li class="l-row__item product" data-product-id="<%= product.id %>">
<div> Contains styling like photos, product titles, etc.
I don't think you'll need this information, its super long.</div>
</li>
<%} %>
使用公共类属性而不是id,并将其一次应用于所有产品。很抱歉,这根本不起作用,我觉得这很奇怪,因为我认为它至少会抓取所有的.l行项目?但不管怎样,当我做这样的事情之前,它抓住了每一个李,而不是一个人,所以我给了他们身份证。谢谢你的尝试!这很奇怪,这是一种与公认答案非常相似的方法(除了使用数据属性),无需担心,只要你有一个解决方案+1甚至你的解决方案也非常相似。它本该起作用的是的,它起作用了!非常感谢你!我甚至没有想到数据属性!嘿,快速跟进问题。我需要将C#转换为jQuery,这样我就可以使用JS模板来返回结果(您可以通过选择大小缩小产品范围)。我会写它吗?我就是这样写其余的模型的,但这个似乎不起作用?我也试过身份证。让我知道我是否应该在另一个问题中问这个问题。@user3205098,我不擅长JS模板。你应该在一个单独的问题中提出这个问题,这样它就能到达正确的听众
$(".l-row__item").on("click", function () {
var offercart = $(this).clone();
<%foreach (var product in Model.Products){%>
<li class="l-row__item product" data-product-id="<%= product.id %>">
<div> Contains styling like photos, product titles, etc.
I don't think you'll need this information, its super long.</div>
</li>
<%} %>
$(".product").on("click", function () {
var offercart = $(this).clone();
var productid = $(this).data('product-id');
$("#offer-grid").append(offercart);
});