jquery在表单提交后删除隐藏的表单值

问题描述 投票:0回答:1

我的表单很小,提交表单后需要jquery清除隐藏的表单值。

这是我表单中的摘录

<select id='size'>
    <option value='4.99'>S</option>
    <option value='5.99'>M</option>
    <option value='6.99'>L</option>
    <option value='7.99'>XL</option>
</select>

<input type="hidden" id="my-item-price" name="my-item-price" value="" />

和更改隐藏字段值的jquery

$(document).ready(function(){

    $('#size').change(function() {

        var x= $(this).val();
        $('#my-item-price').val(x);
    });
}

问题是,一旦我提交了表单,我希望从隐藏的输入中删除该值。我希望我必须将值设置为"",但是我该怎么做?


编辑-:

这里是我网站测试部分的link

我想做的是一旦单击按钮,它将隐藏的表单值重置为空,所以当我进行新选择时,它将再次更改值

这里是jquery的代码。

    function clearoption() {
            alert('it should work');
            $('#my-item-price').attr('value','');
        }

        $('#size').change(function() {

            var x= $(this).val();
            $('#my-item-price').val(x);
        }); 

      // Add an item to the cart
      $('.jcart').submit(function(e) {
         add($(this));
         clearoption();
         e.preventDefault();
      });

它正在调用清除#my-item-price的函数,但由于某种原因,它没有这样做。如果我选择其他尺寸,它仍会添加原始价格

php jquery shopping-cart
1个回答
2
投票

如果您正在使用Ajax提交表单,那么在成功部分中,您可以使用以下代码

 $(' #myform input:hidden').attr('value','');

$('#my-item-price').attr('value','');

否则,如果您不使用Ajax提交表单,则清除隐藏的字段将无济于事。

而且,如果您可以将链接发布到您的页面,将会容易得多!

编辑:要触发/更新对显示价格的

标签的更改,您需要执行以下操作:

$(' #myform input:hidden').attr('value','').trigger('change');

我认为这应该起作用

© www.soinside.com 2019 - 2024. All rights reserved.