保存对象中的字段值

时间:2016-11-24 15:34:04

标签: jquery

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

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>

1 个答案:

答案 0 :(得分: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将根据您的需要包含结果。