我想在循环中的jQuery中使用PHP变量

时间:2014-10-14 05:44:14

标签: php jquery

我想在jQuery中使用PHP变量 我在桌子上有50个学生数据,里面有文本框和单选按钮 默认情况下,文本框是隐藏的,但是当我点击表格中的单选按钮文本框时显示。

$("input[type='radio']").on('change', function() {
    if ($(this).val() == "2")
        var id = '<?php echo json_encode($absent); ?>';
        //$("input[type='text']").show();
    else
        $("input[type='text']").hide();
});

PHP代码:

        <input name="nxtmark<?php echo $row[0]; ?>" type="text" id="nxtmark<?php echo $row['id']; ?>" onblur="onleave(this.name);" maxlength="2" placeholder="Enter Mark" hidden="" />
        <div class="noerrordiv" id="dnxtmark<?php  echo $row[0]; ?>">Mark must not be blank</div>
    </td>
    <td>
        <div align="justify">
            <input type="radio" id="rdopresent" name="rdopresent<?php  echo $row['id']; ?>" checked="checked" value="1" />Present
            <input type="radio" id="rdoabsent" name="rdopresent<?php  echo $row['id']; ?>" value="2" />Absent<br />
        </div>
    </td>
</tr>

2 个答案:

答案 0 :(得分:0)

您可以在不使用PHP变量的情况下显示/隐藏文本框。见下面的代码 -

$("input[type='radio']").on('change',function() {
  //find input text from the previous 'td' for which name starts with 'nxtmark'
  var $textBox = $(this).closest('td').prev('td').find('input[name^=nxtmark]');

  //show hide text box as per radio button value
  if($(this).val() == "2")
    $textBox.show();
  else
    $textBox.hide();
});

答案 1 :(得分:0)

如果您的问题只是在jquery中使用PHP变量,那么以下示例将对您有所帮助。

如果你必须在jquery中使用php数组,那么在PHP中使用json_encode而不是在SCRIPT中。

<?php 
    $a = array(1,2,3,4); 
    $a = json_encode($a);
    $b = "hello";
?>
<script>
$(document).ready(function(){
    alert("<?php echo $a;  ?>"); 
    alert("<?php echo $b;  ?>"); 
});
</script>