【问题标题】:JQuery To Duplicate Form Select Menu SelectionJQuery复制表单选择菜单选择
【发布时间】:2010-09-14 15:51:17
【问题描述】:

我有一个带有 2 个下拉菜单的简单表单。我不知道该怎么做是有一个简单的 HTML 链接,它将选择从第一个选择菜单复制到第二个。需要注意的是,我们没有在表单输入字段上设置“id”,因此我需要使用“名称”字段来完成 JQuery 对象选择。这是表单的 HTML:

<form action="/form/update" name="update-form" method="POST"> 

<select name="menu1_selection"> 
<option value="">-</option> 
<option value="1">1</option> 
<option value="2">2</option> 
<option value="3">3</option> 
<option value="4">4</option> 
<option value="5">5</option> 
<option value="6">6</option> 
<option value="7">7</option> 
<option value="8">8</option> 
<option value="9">9</option> 
<option value="10">10</option> 
<option value="11">11</option> 
<option value="12">12</option> 
</select>

<select name="menu2_selection"> 
<option value="">-</option> 
<option value="1">1</option> 
<option value="2">2</option> 
<option value="3">3</option> 
<option value="4">4</option> 
<option value="5">5</option> 
<option value="6">6</option> 
<option value="7">7</option> 
<option value="8">8</option> 
<option value="9">9</option> 
<option value="10">10</option> 
<option value="11">11</option> 
<option value="12">12</option> 
</select>

<a href="#" onclick="return false;" class="copyMenu1">copy</a>

</form>

这是我目前正在使用的 JQuery,它无法正常工作,因为它无法从第一个菜单中正确选择值:

<script type="text/javascript"> 
  $(document).ready(function() {  
    $("a.copyMenu1").click(function(){
        $("input[name='menu1_selection']").val($("input[name='hmenu2_selection']").val());
    });
  });
</script>

我已经尝试了大约 100 种不同的方法,但仍然无法找出从第一个菜单中选择值并使用“名称”字段选择从第二个菜单中进行相同选择的正确方法。提前感谢您的帮助!

【问题讨论】:

    标签: jquery forms select


    【解决方案1】:

    你需要一个&lt;select&gt; element selector 代替,像这样:

    $(function() {  
      $("a.copyMenu1").click(function(){
        $("select[name='menu1_selection']").val($("select[name='menu2_selection']").val());
      });
    });
    

    menu2_selection 选择器上还有一个额外的h 需要删除,you can test it here。如果您打算复制 任何 样式的输入,则可能是在 the :input selector 之后。

    演示中的一个注释,就像您的代码一样,这会将 second 菜单 复制到 first,而不是相反,所以确保设置第二个下拉菜单,然后点击复制。

    【讨论】:

    • 就像一个魅力。感谢您发现这两个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-19
    • 2010-11-16
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多