2015-01-15 5 views
1

Я пытаюсь получить скрытое поле (продукт) значение в моей форме и передать его через на странице благодарности:Как получить скрытое значение с помощью JQuery?

<form action="" name="downloadform" id="downloadform" class="downloadform" method="post"> 
     <div class="field"> 
     <input name="name" type="text" id="name" class="input name" placeholder="Name..." /> 
     </div> 
     <div class="field"> 
     <input name="company" type="text" id="company" class="input company" placeholder="Company..." /> 
     </div> 
     <div class="field"> 
     <input name="tel" type="text" id="tel" class="input tel" placeholder="Telephone..." /> 
     </div> 
     <div class="field"> 
     <input name="email" type="text" id="email" class="input email" placeholder="Email Address..." /> 
     </div> 
     <?php /*?><div class="field captcha"> 
     <img class="captcha_input" src="/inc/captcha.php" /> 
     <input name="captcha" type="text" id="captcha" class="input captcha" placeholder="Please enter characters..."> 
     </div><?php */?> 
     <div class="field"> 
     <div class="medium secondary btn"><input type="submit" name="Submit2" value="Send Request" class="btn" id="downloadbtn" /></div> 
     <input type="hidden" name="product" id="product" class="product" value="<?php echo $page[3]; ?>" /> 
     <input type="hidden" name="antiSpam" id="antiSpam" /> 
     </div> 
    </form> 

У меня есть файл ajaxform следующим ниже:

var antiSpam = function() { 
    if (document.getElementById("antiSpam")) { 
     a = document.getElementById("antiSpam"); 
     if (isNaN(a.value) == true) { 
      a.value = 0; 
     } else { 
      a.value = parseInt(a.value) + 1; 
     } 
    } 
    setTimeout("antiSpam()", 1000); 
} 

AntiSpam();

$(function() { 

    filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; 

    $("#downloadbtn").click(function() { 

     var name = $("#name").val(); 
     var company = $("#company").val(); 
     var tel = $("#tel").val(); 
     var email = $("#email").val(); 
     var product = $("#product").val(); 
     var antispam = $("#antiSpam").val(); 

     if (name == "") { 
      $("#name").focus(); 
      $("#name").val(""); 
      $("#name").css({background:"#b72a18", color:"#fff"}); 
      return false; 
     } 
     if (company == "") { 
      $("#company ").focus(); 
      $("#company ").val(""); 
      $("#company ").css({background:"#b72a18", color:"#fff"}); 
      return false; 
     } 
     if (tel == "") { 
      $("#tel").focus(); 
      $("#tel").val(""); 
      $("#tel").css({background:"#b72a18", color:"#fff"}); 
      return false; 
     } 
     if (!filter.test(email)) { 
      $("#email").focus(); 
      $("#email").val(""); 
      $("#email").css({background:"#b72a18", color:"#fff"}); 
      return false; 
     } 
     if (product == "") { 
      $("#product").focus(); 
      $("#product").val(""); 
      $("#product").css({background:"#b72a18", color:"#fff"}); 
      return false; 
     } 

     $('.downloadform').html('<center><img src="/images/ajax-loader.gif" style="padding:20px;"></center>'); 

     var dataString = '&name=' + name + '&tel=' + tel + '&company=' + company + '&email=' + email + '&product=' + product + '&antispam=' + antispam + '&type=download'; 
     //alert (dataString);return false; 

     $.ajax({ 
      type: "POST", 
      url: "/process.php", 
      data: dataString, 
      success: function() { 

       setTimeout(function() { 
        $('.downloadform').html('<p>Thank you for your enquiry, we will contact you shortly. <a href="/pdfs/">Download</a></p>'); 
       }, 3500); 
      } 
    }); 
    return false; 
    }); 
}); 

Как и выше на самой последней части «Спасибо за Ваш запрос, мы свяжемся с Вами в ближайшее время, я хотел бы получить скрытое значение поля продукта?

+5

'уаг ProductValue = $ ('# product'). val(); ' – Daan

+0

Если продукт скрыт, то почему вы являетесь focu ssing it и изменение CC 'if (product ==" ") {'? Также проверьте значение продукта с консоли, имеет ли оно значение или нет? Кроме того, убедитесь, что у вас есть один элемент с 'продуктом' на всей странице. –

ответ

0

Просто используйте .val() функцию в Jquery.use код ниже

<input type="hidden" name="product" id="product" class="product" value="<?php echo $page[3]; ?>" /> 

    <script> 
    alert($("#product").val()); 
    </script> 

http://jsfiddle.net/3xscmrhz/1/

Надеется, что это помогает вам

+0

Спасибо, да, это ответ на мой вопрос, теперь у меня есть рабочая форма со скрытыми полями. – Craig

-1

Вы можете достичь значения этого скрытого поля, как это:

var product = document.getElementById("product").value(); 
0

вы можете использовать

ProductVal=$('#product').val(); 

или

ProductVal=document.getElementById("product").value; 

я надеюсь, что эта помощь

+0

Пожалуйста, не отправляйте ответы только на код. – NKN

+0

Почему? , если этого достаточно, чтобы пользователь понял решение, это хорошо – robert

Смежные вопросы