我有一个JS代码,如果值第一个文本框匹配,该函数将显示Textbox。 像这样:
$(window).load(function(){
var myString = "<?php echo $num; ?>";
$('#secondinput').hide();
$("#firstinput").keyup(function () {
var value = $(this).val();
if($(this).val().match(myString)) {
$('#secondinput').show();
} else {
$('#secondinput').hide();
$('#secondinput input[type="text"]').val("");
}
});
});
现在我将它与数据库集成,因此var myString必须基于表。如果表上的数据匹配,则显示文本框。如果没有,请不要显示。
这样的PHP:
<?php
include ("includes/_db_.php");
$query = mysql_query("SELECT * FROM t_test");
while ($data = mysql_fetch_array($query))
{
$num = $data['status'];
}
?>
我已尝试过该代码,但没有效果。 没有与数据库集成的演示:http://jsfiddle.net/Ltapp/369/
有什么建议吗?
答案 0 :(得分:2)
我认为这会奏效。我不知道我是否遗忘了什么,但似乎这应该有效:
//PHP
<?php
include ("includes/_db_.php");
$num = array();
$query = mysql_query("SELECT * FROM t_test");
while ($data = mysql_fetch_array($query)) {
array_push($num, $data['status']);
}
?>
//JAVASCRIPT
$(window).load(function(){
var myString = <?php echo json_encode($num); ?>;
// or
var myString = new Array(<?php echo implode(',', $num); ?>);
$('#secondinput').hide();
$("#firstinput").keyup(function () {
var value = $(this).val();
if ($.inArray(value, myString) === -1) {
$('#secondinput').hide();
$('#secondinput input[type="text"]').val("");
} else {
$('#secondinput').show();
}
});
});