2014-09-25 43 views
2

for循環在PHP中是這樣的:jQuery是不是從PHP拿起權值環

for ($i=1;$i<=10;$i++) { 
?> 
    <input type="hidden" class="ThisQuestion" id="GetQuestion-<?php echo $i; ?>" value="<?php echo $i; ?>" /> 
    <a href="javascript:void(0)" class="VerySmallFont"> 
      <div class="SelectNumberBox <?php echo $NumberBoxClass; ?>"><?php echo $i; ?></div> 
    </a> 

現在我想從PHP提取$i值jQuery的。下面是我在JS部分正在做這 -

<script type="text/javascript" language="javascript"> 
$(document).ready(function() { 
    $(".VerySmallFont").click(function(){ 
     var $Parent    = $(this).parent();      
     var ThisQuestionNumber = $Parent.find('[id^="GetQuestion-]:first').val(); 
     var TestID  = $("#GetTestID").val(); 
     var ShowCQ = '1'; 
     $.ajax({ 
      type : 'GET', 
      url:'getquestiondata.php', 
      data : {TestID: TestID, ShowCQ: ShowCQ, ThisQuestionNumber: ThisQuestionNumber}, 
      success:function(data) { 
       $("#LoadingImage").hide(); 
       $('#ShowQuestion').html(data); 
      } 
     }); 
    }); 
}); 
</script> 

我不會在我的JS獲得VAR ThisQuestion的價值。我也嘗試使用類ThisQuestion而不是id選擇器GetQuestion,但這也不起作用。我不確定我所犯的錯誤是什麼。

回答

1

看着你的標記看起來你指向了錯誤的元素。在你的jQuery中,你指向父。你應該指向以前的兄弟姐妹,這是隱藏的輸入。

var hidden = $(this).prev(); // point the input 
var ThisQuestionNumber = hidden.val(); 

全:

<?php 
for ($i=1;$i<=10;$i++) { 
?> 
    <input type="hidden" class="ThisQuestion" id="GetQuestion-<?php echo $i; ?>" value="<?php echo $i; ?>" /> 
    <a href="javascript:void(0)" class="VerySmallFont"> 
      <div class="SelectNumberBox <?php echo $NumberBoxClass; ?>"><?php echo $i; ?></div> 
    </a> 
<?php } ?> 

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script type="text/javascript" language="javascript"> 
$(document).ready(function() { 

    $(".VerySmallFont").click(function(){ 

     var hidden = $(this).prev(); 
     var ThisQuestionNumber = hidden.val(); // point to the previous sibling 
     var TestID = $("#GetTestID").val(); 
     var ShowCQ = '1'; 
     $.ajax({ 
      type : 'GET', 
      url:'getquestiondata.php', 
      data : {TestID: TestID, ShowCQ: ShowCQ, ThisQuestionNumber: ThisQuestionNumber}, 
      success:function(data) { 
       $("#LoadingImage").hide(); 
       $('#ShowQuestion').html(data); 
      } 
     }); 
    }); 
}); 
</script> 

Demo

+0

謝謝。它爲我工作。 – vvk 2014-09-25 09:01:20

+0

@vvk很高興這有幫助 – Ghost 2014-09-25 09:12:44