首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多个同名输入

多个同名输入
EN

Stack Overflow用户
提问于 2016-03-22 21:32:23
回答 1查看 801关注 0票数 0

我有表单,在它中,用户可以复制输入表单,并且我有一个单选按钮的麻烦。当我试图使用:

代码语言:javascript
复制
$('form').serialize();

在Chrome开发工具中

我有:

代码语言:javascript
复制
"text-field%5B%5D=%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2+%D0%98%D0%B2%D0%B0%D0%BD+%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%87&text-h-alignment%5B%5D=42&text-v-alignment%5B%5D=42&text-field%5B%5D=(000)+000+00+00&text-alignment%5B%5D=center& text-h-alignment%5B%5D=42&text-v-alignment%5B%5D=42"

正如您所看到的,单选按钮不在“数组”中,它是一个唯一的变量。但我在变量名的末尾使用了"[]“符号。

以下是我的HTML:

代码语言:javascript
复制
<form>
  <div class="row">
    <div class="col-lg-4">
      <div class="input-group">
        <div class="input-group-btn">
          <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Шаблон <span class="caret"></span>
          </button>
          <ul class="dropdown-menu">
            <li><a href="#" onclick="$(this).closest('.input-group').find('input[type=text]').val('Иванов Иван Иванович');">Имя</a></li>
            <li><a href="#" onclick="$(this).closest('.input-group').find('input[type=text]').val('(000) 000 00 00');">Телефон</a></li>
            <li><a href="#" onclick="$(this).closest('.input-group').find('input[type=text]').val('email@example.com');">E-mail</a></li>
            <li><a href="#" onclick="$(this).closest('.input-group').find('input[type=text]').val('г. Город, ул. Улица 1');">Адрес</a></li>
            <li><a href="#" onclick="$(this).closest('.input-group').find('input[type=text]').val('example.com');">Сайт</a></li>
          </ul>
        </div>
        <input type="text" class="form-control" name="text-field[]">
      </div>
    </div>
    <div class="btn-group" data-toggle="buttons">
      <label class="btn btn-default active">
        <input type="radio" checked="checked" name="text-alignment[]" value="left"><span class="glyphicon glyphicon-align-left" aria-hidden="true"></span>
      </label>
      <label class="btn btn-default">
        <input type="radio" name="text-alignment[]" value="center"><span class="glyphicon glyphicon-align-center" aria-hidden="true"></span>
      </label>
      <label class="btn btn-default">
        <input type="radio" name="text-alignment[]" value="right"><span class="glyphicon glyphicon-align-right" aria-hidden="true"></span>
      </label>
    </div>

    <div class="input-group spinner padding-15 pull-left">
      <span class="input-group-addon" id="basic-addon1"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span></span>
      <input type="text" class="form-control" value="42" name="text-h-alignment[]">
      <div class="input-group-btn-vertical">
        <button class="btn btn-default" type="button"><i class="glyphicon glyphicon-chevron-up"></i></button>
        <button class="btn btn-default" type="button"><i class="glyphicon glyphicon-chevron-down"></i></button>
      </div>
    </div>

    <div class="input-group spinner padding-15 pull-left">
      <span class="input-group-addon" id="basic-addon1"><span class="glyphicon glyphicon-arrow-up" aria-hidden="true"></span></span>
      <input type="text" class="form-control" value="42" name="text-v-alignment[]">
      <div class="input-group-btn-vertical">
        <button class="btn btn-default" type="button"><i class="glyphicon glyphicon-chevron-up"></i>
        </button>
        <button class="btn btn-default" type="button"><i class="glyphicon glyphicon-chevron-down"></i>
        </button>
      </div>
    </div>

  </div>
  <div class="row margin-top-15">
    <div class="col-lg-4">
      <a href="#" class="color-green" onclick="$(this).closest('.container-fluid').find('.row:eq(0)').clone().prependTo($(this).closest('.container-fluid form'))">
        <div class="circle green-circle circle-position pull-left"><span class="glyphicon glyphicon glyphicon-plus color-white circle-plus" aria-hidden="true"></span>        </div>Добавить еще поля</a>
    </div>
  </div>
</form>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-26 19:00:41

我没有在HTML中找到一个本机解决方案。

因此,有必要对联合来文使用这种解决办法:

代码语言:javascript
复制
$(this).closest('.container-fluid').find('.row:eq(0)').clone(true).find('input[type=radio]').attr('name', function(i, val){return val.replace(/(\d+)/, function(n){ return ++n })});

因此,当您单击“重复字段”时,会出现带有名称的单选按钮:文本对齐1,文本对齐2.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36165641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档