给1个Html选项2名称?

时间:2014-08-15 16:20:08

标签: html forms option

发生的事情是,我使用的是不受我控制的付款处理程序,我需要传递运费值以及每个附加项目的运费值。 由于它们是单独打包的,因此我们会按照附加项目收取相同数量的费用,因此我没有想出用户必须填写的两个相同字段,而是尝试创建一个分配shippingf和shipping2f

的值的字段

以下是我多次尝试之一的示例。另一种尝试就是把名字命名为""两次,这似乎也没有用。

<select name="shippingf, shipping2f" style="height:35px;">

  <option value="12">US</option>

  <option value="32">Canada</option>

</select>

对此事的任何帮助都会很棒。

谢谢!

1 个答案:

答案 0 :(得分:2)

仅使用HTML无法实现。

你可以

  1. 使用JS更改表单中type="hidden"元素的值,或
  2. 服务器端(假设为PHP),在include付款处理器之前,添加$_POST['shipping2f'] = $_POST['shippingf'];。只需在HTML中保留shippingf
  3. <小时/> 由于OP说选项2不起作用,这里是选项1的一个例子:

    HTML:

    <select name="shippingf" style="height:35px;">
        <option value="12">US</option>
        <option value="32">Canada</option>
    </select>
    <input name="shipping2f" type="hidden"></input>
    

    jQuery的:

    $("select[name=shippingf]").change(function(){
        $("input[name=shipping2f]").val($(this).children(':selected:first').val());
    }).change();
    

    演示:http://jsfiddle.net/nb8j06qb/

    &lt; ====

    HTML:

    <select id='sf' name="shippingf" style="height:35px;">
        <option value="12">US</option>
        <option value="32">Canada</option>
    </select>
    <input id='s2f' name="shipping2f" type="hidden" value="12"></input>
    

    Vanilla JS:

    document.getElementById('sf').onmouseup = function(){
        document.getElementById('s2f').value = this.options[this.selectedIndex].value;
    };
    

    演示:http://jsfiddle.net/nb8j06qb/1/