【问题标题】:add hidden fields including current submit field value and send to next page as hidden field添加隐藏字段,包括当前提交字段值并作为隐藏字段发送到下一页
【发布时间】:2013-10-23 05:08:01
【问题描述】:

这个表单实际上得到了一些输入字段,如下所示。

我需要添加输入(隐藏)字段值和我从 custom12 获得的值,并在隐藏字段中作为 custom 13 发送到下一页。如何做到这一点

<form name="q9" id="submitDetails" action="pandora.do" method="post" class="form-horizontal">

<input type="hidden" name="cutom4" value="1" class="Qty">
<input type="hidden" name="cutom5" value="2" class="Qty">
<input type="hidden" name="cutom6" value="3" class="Qty">
<input type="hidden" name="cutom7" value="5" class="Qty">
<input type="hidden" name="cutom8" value="1" class="Qty">
<input type="hidden" name="cutom9" value="9" class="Qty">
<input type="hidden" name="cutom10" value="8" class="Qty">
<input type="hidden" name="cutom11" value="10" class="Qty">         

          <fieldset class="questionsForm">
            <div class="form-group">
              <div class="col-xs-10">
                <div class="radio">
                  <input name="custom12" id="custom12A" value="1" type="radio" class="styled myClass prettyCheckable">
                  <label for="custom12A">I love what I love – that will never change </label>
                </div>
                <div class="radio">
                  <input name="custom12" id="custom12B" value="2" type="radio" class="styled myClass prettyCheckable">
                  <label for="custom12B">I keep an eye on the charts </label>
                </div>
                <div class="radio">
                  <input name="custom12" id="custom12C" value="3" type="radio" class="styled myClass prettyCheckable">
                  <label for="custom12C">I buy t-shirts, records and go to live shows if I like an artist. </label>
                </div>
                <div class="radio">
                  <input name="custom12" id="custom12D" value="4" type="radio" class="styled myClass prettyCheckable">
                  <label for="custom12D">I always know every word of every song and travel night and day for my artists.</label>
                </div>
              </div>
            </div>
            <div id="error_msg5">&nbsp;</div>

            <input type="hidden" name="cutom13" value="$entrantForm32399.custom13" id="custom13">           

            <div class="clearfix">&nbsp;</div>
            <!-- Button -->
            <div class="form-group nextButton">
              <div class="col-xs-10">
                <button id="submitDetails" name="submitDetails" class="btn btn-primary btnNext">NEXT</button>
              </div>
            </div>
          </fieldset>
        </form>

【问题讨论】:

  • php 不是这里使用的编程语言
  • 服务器端脚本(通常是 php)是响应表单的好方法。正如 Rohan 所提到的,您可以使用其他方法,例如 cookie。
  • 你有没有使用任何服务器端语言??
  • 好吧,我们正在使用服务器端.. 但它是定制构建的,无法真正触及 :( 对我来说很不幸。否则在 java 代码中,我可以在 bean 中添加值并抛出它回来了。我需要将添加值传递到下一页,这就是我需要做的:(

标签: jquery html forms


【解决方案1】:

您可以使用localstorageCookies 通过javascript 将数据从一个页面发送到另一个页面。

喜欢,

$'#submitDetails').on('click',function(){
    localStorage.setItem('formData',$('#submitDetails').serialize());
    $('#submitDetails').submit();
    // set form data to local storage
});

阅读serialize()

或者,你可以试试这个,

首先更改您的formid,因为id 必须是unique 并且您的buttonform 都具有相同的id

$( "#submitDetails" ).on('click',function( event ) {    
    var c4 = parseInt($('input[name="custom4"]').val());
    var c5 = parseInt($('input[name="custom5"]').val());
    var c6 = parseInt($('input[name="custom6"]').val());
    var c7 = parseInt($('input[name="custom7"]').val());
    var c8 = parseInt($('input[name="custom8"]').val());
    var c9 = parseInt($('input[name="custom9"]').val());
    var c10 = parseInt($('input[name="custom10"]').val());
    var c11 = parseInt($('input[name="custom11"]').val());    
    var radioVal= parseInt($('input[name="custom12"]:checked').val());    
    var total = c4 + c5 + c6 + c7 + c8 + c9 + c10 + c11 + radioVal;    
    $('#custom13').val(total);// send this value to next form    
});

【讨论】:

    【解决方案2】:

    最终得到如下解决方案

    $( "#submitDetails" ).submit(function( event ) {
    
        var c1 = parseInt($(this).find('input[name="custom4"]').val());
        var c2 = parseInt($(this).find('input[name="custom5"]').val());
        var c3 = parseInt($(this).find('input[name="custom6"]').val());
        var c4 = parseInt($(this).find('input[name="custom7"]').val());
        var c5 = parseInt($(this).find('input[name="custom8"]').val());
        var c6 = parseInt($(this).find('input[name="custom9"]').val());
        var c7 = parseInt($(this).find('input[name="custom10"]').val());
        var c8 = parseInt($(this).find('input[name="custom11"]').val());
    
        var radioInput = parseInt($(this).find('input[name="custom12"]:checked').val());
    
        var total = c1+c2+c3+c4+c5+c6+c7+c8+radioInput;
    
        $('#finalvalue').val(total);
    
        $test = $('#finalvalue').val();
    
    });
    

    【讨论】:

      猜你喜欢
      • 2013-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-03
      • 1970-01-01
      • 1970-01-01
      • 2010-11-19
      相关资源
      最近更新 更多