2016-11-24 76 views
-2

目前,我有一个带有输入的选择框列表,我希望在发送表单时将值保存在对象中,像这样?我怎么能解决这个问题?保存对象中的字段值

var commissions = { 
    seller:"Agent", 
    percentage:"50" 
}, 
{ 
    seller:"Crisalix Global", 
    percentage:"20" 
}, 
{ 
    seller:"Support", 
    percentage:"30" 
}; 

这是HTML:

所有的
<div class="container-seller-commission"> 
    <div class="row-seller-commission"> 
    <select name="seller" id="seller" class="select-seller valid"> 
     <option value=""></option> 
     <option value="4" selected="selected">Agent</option> 
     <option value="2">Crisalix Global</option> 
     <option value="1">Owner</option> 
     <option value="3">Support</option> 
    </select> 
<input name="percentage" id="percentage" value="100" class="sales-form-input--number sales-form-input--commission valid" type="number"> 
    </div> 
</div> 
<div class="row-seller-commission"> 
    <select name="seller" id="seller" class="select-seller valid"> 
    <option value=""></option> 
    <option value="4" disabled="disabled">Agent</option> 
    <option value="2" selected="selected">Crisalix Global</option> 
    <option value="1">Owner</option> 
    <option value="3">Support</option> 
    </select> 
<input name="percentage" id="percentage" value="100" class="sales-form-input--number sales-form-input--commission valid" type="number"> 
</div> 
<div class="row-seller-commission"> 
    <select name="seller" id="seller" class="select-seller valid"> 
    <option value=""></option> 
    <option value="4" disabled="disabled">Agent</option> 
    <option value="2">Crisalix Global</option> 
    <option value="1" selected="selected">Owner</option> 
    <option value="3" disabled="disabled">Support</option> 
    </select> 
<input name="percentage" id="percentage" value="100" class="sales-form-input--number sales-form-input--commission valid" type="number"> 
</div> 
+0

你到底在干什么? – Liam

+0

如何在问题中说明保存对象中的所有值。谢谢 – user1937021

+0

Aside - ID必须是独一无二的所有选择和所有输入具有相同的ID ...这可能会导致你与JS代码 – DaniP

回答

1

首先,你的HTML肯定是无效的。没有两个元素应该在HTML页面中共享相同的ID。它不符合标准。您需要使用不同的这些代码的HTML5属性,CSS类等。

来到你的问题的解决方案,它可以做到类似以下(假设一个按钮产生的细节清单):

$("#submit").click(function() { 
    var commissions = []; 

    $(".row-seller-commission").each(function() { 
    var seller = $(this).find("select[name=seller] option:selected").text(), 
     percentage = $(this).find("input[name=percentage]").val(); 

    commissions.push({ 
     seller: seller, 
     percentage: percentage 
    }); 
    }); 

    console.log(commissions); 
}); 

commissions将包含结果,根据自己的需要。