如何获得在span中使用javascript创建的产品标签的值并将值传递给控制器​​?

如何获得在span中使用javascript创建的产品标签的值并将值传递给控制器​​?

问题描述:

enter image description here如何获得在span中使用javascript创建的产品标签的值并将值传递给控制器​​?

<input type="text" class="product-input js-product-tags" placeholder="Computer, devices, smartphone" /> 


    <ul class="js-tags"> 
    <li class="tag-options"> 
     <span>CPU</span><div class="remove-tag js-remove-tag">X</div> 
    </li> 
    </ul> 

这是我的HTML代码的的样子。请帮助我如何将这些跨度值传递给控制器​​并保存在没有jQuery Ajax的数据库中?

+0

看来你是使用一些jQuery插件,份额代码 – Satpal

+0

看看这篇关于如何将数据从视图传递到控制器的帖子:https://stackoverflow.com/questions/20333021/asp-net-mvc-how-to-pass-data-from-view - 对控制器 – Leth

+0

没有ia m不使用任何jquery插件只是使用jquery在输入enter事件上创建产品标签。 – Ahmed

如果你想要回传,创建隐藏input元素:

<input type="text" class="product-input js-product-tags" placeholder="Computer, devices, smartphone" /> 
<input type="hidden" name="tags" value="CPU" /> 
<input type="hidden" name="tags" value="RAM" /> 
<input type="hidden" name="tags" value="HARDWARE" /> 

<ul class="js-tags"> 
<li class="tag-options"> 
    <span>CPU</span><div class="remove-tag js-remove-tag">X</div> 
    <span>RAM</span><div class="remove-tag js-remove-tag">X</div> 
    <span>HARDWARE</span><div class="remove-tag js-remove-tag">X</div> 
</li> 
</ul> 

...其中tagsname="tags"是参数名:

[HttpPost] 
public ActionResult Create(ICollection<string> tags) { 
    // ... 
} 
+0

感谢您的回答。它的输入类型隐藏。你能告诉我什么是更好的方法吗? jquery ajax更适合做这种事情吗? – Ahmed

+0

这取决于你的应用程序流程。如果您的回传页面将加载相同的页面,那么ajax对于顺畅的体验非常有用,因为它速度更快 - 发送的数据更少,并且不会重新呈现页面。作为交换,你必须在JavaScript中处理视图,当你想改变视图的外观时,这导致了2点维护。 – aaron