【发布时间】:2016-01-28 20:28:44
【问题描述】:
我正在使用Rivets 绑定我的表单数据。有什么方法可以将我的输入类型文件与帮助铆钉粘合剂绑定。
就像这个例子https://jsfiddle.net/steinbring/v29vnLuh/你可以看到我们绑定了文本区域。但是我们将如何绑定输入文件。
让我解释一下
这是我的表格
<form class="product-inputs full-width-inputs" method="post" action="/create/save-manual-products-shopify">
<section id="rivettest">
<ul class="no-bullet">
<li class="product-input-header">
<div class="row no-padding">
<div class="small-2 columns">
<p>Product Name</p>
</div>
<div class="small-2 columns">
<p>Product Detail</p>
</div>
<div class="small-2 columns">
<p>Product Type</p>
</div>
<div class="small-2 columns">
<p>Price</p>
</div>
<div class="small-2 columns floatleft">
<p>Sku</p>
</div>
<div class="small-2 columns floatleft">
<p>Image</p>
</div>
</div>
</li>
<li class="product-input" rv-each-product="products">
<div class="row no-padding">
<div class="small-2 columns" style="position: relative">
<input class="product-name-input" type="text" rv-value="product.name" placeholder="New Product"/>
<span class="icon-error remove-btn" rv-on-click="controller.removeItem"></span>
</div>
<div class="small-2 columns">
<input type="text" rv-value="product.product_detail"/>
</div>
<div class="small-2 columns">
<input type="text" rv-value="product.product_type"/>
</div>
<div class="small-2 columns">
<input type="text" rv-value="product.price">
</div>
<div class="small-2 columns">
<input type="text" rv-value="product.sku">
</div>
<div class="small-2 columns">
<input type="file" rv-value="product.image">
<!-- <input type="file"> -->
<!-- <a href="#"><span class="icon-upload"></span> Upload Image</a> -->
</div>
</div>
</li>
<li class="additem">
<a href="#" rv-on-click="controller.addItem"><span class="icon-plus"></span>Add Product Manually</a>
</li>
</ul>
</section>
<input type="submit" value="Submit for KF Approval" class="button radius add-product-shopify" >
</form>
这是我的脚本
var products = [];
var controller = {
addItem: function(e, model) {
model.products.push({name: "New Product", product_detail: "", product_type: "", price: null, sku: null, image: ""});
e.preventDefault();
return false;
},
removeItem: function(e, model) {
var index = model.index;
if (index > -1) {
products.splice(index, 1);
}
},
};
rivets.bind($('#rivettest'), {products: products, controller: controller});
但是当我提交表单时,我得到了这个回复
图片:“” 名称:“一” 价格:“12” 产品详细信息:“b” 产品类型:“c” 货号:“12”
在这里你看到图像参数是空的......请帮助我。谢谢
【问题讨论】:
标签: php jquery laravel rivets.js