2014-04-25 100 views
0

我遇到传递隐藏值的问题。我有一个搜索字段,onclick调用我的javascript函数,目的是在页面下方设置一个隐藏字段值。将文本字段设置为隐藏字段值 - 未设置值

<div class="search"> 

     <input type="text" name="username" class="mySearch" value=""> 
     <input type="button" class="myButton" value="" onclick="setSearch();"> 

    </div> 

我的javascript,i设置在函数的外部。

setSearch(){ 
    if(i == 0){ 
     $('input:hidden[name="search1"]').val($(".mySearch").val()); 
    } 
    else if(i == 1) 
    { 
     $('input:hidden[name="search2"]').val($(".mySearch").val()); 
    } 
    i++; 
} 

,然后我的领域尝试设置

<div class="sendallHolder"> 
    <form method="post" action="getTweets.php"> 

     <input type="hidden" name="fromTest" id="fromTest"/> 
     <input type="hidden" name="untilTest" id="untilTest"/> 
     <input type="hidden" name="latTest" id="latTest"/> 
     <input type="hidden" name="longTest" id="longTest"/> 
     <input type="hidden" name="search1" id="search1" /> 
     <input type="hidden" name="search2" id="search2" /> 


     <input type="submit" class="sendAll" value="Gather News!"> 
    </form> 

</div> 

它通过循环运行两次,但每次它无法正常在我的隐藏字段设置值。 Chrome中的开发工具告诉我,'价值'正在出现,但没有设定价值。我不完全确定我做错了什么。

任何想法?这样

+1

你为什么不只是id选择让您的hiddens? $('#search1')。val($(“。mySearch”).val())和$('#search2').val($(“.mySearch”).val()) – milagvoniduak

回答

3

:hidden选择不做你的想法。它匹配使用CSS隐藏的元素,它不匹配type="hidden"输入。只需使用

$("#search1") 

因为您对元素有一个id

+0

,在阅读完这些内容后,我刚刚重新进入测试阶段。 Tbh:隐藏的领域试图弄清楚它有点绝望。 ($('。search1')。val()) 该值仍然没有通过。 什么是设置警报以打印search1和search2现在值的最佳方式? –

+0

'alert($(“#search1”)。val())' – Barmar

+1

请确保您没有重复的ID。 – Barmar

3

采用隐藏式输入ID:

$('#search1').val($(".mySearch").val()) 
0
$(".mySearch").keyup(addhjc); 
function addhjc(){ 
     $('#search2').val($(".mySearch").val()); 
} 

$('.myButton').click(function(){ 
     $('#search2').val($(".mySearch").val()); 
}); 

function setSearch(){ 
    if(i === 0){........ 

,并定义ivar