我试图通过tabela.php从mysql数据库中读取选定的选项(月份)(php然后仅选择用户和他们选择月份的小时数)。此时,当我选择一个选项时,我得到结果,但它显示在新网站tabela.php中。如何制作ajax或脚本以在我的HTML网站上显示结果。
例如:html上的表首先为空,然后用户选择Januar,并且下面的选择表应自动填充正确的结果。 HTML:
<form action="tabela.php" method="post">
Mesec: <select name="meseci", onchange="this.form.submit()">
<option value="o"> </option>
<option value="1">Januar</option>
<option value="2">Februar</option>
</select><br><BR>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">// <![CDATA[
$(document).ready(function() {
$.ajaxSetup({ cache: false });
setInterval(function() {
$('#results').load('tabela.php');
}, 3000); // the "3000" here refers to the time to refresh the div. it is in milliseconds.
});
PHP:
$conn = new mysqli($servername, $username, $password, $dbname);
$x = (isset($_POST['meseci']) ? $_POST['meseci'] : null);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$result = mysqli_query($conn, "SELECT ime, stevilo_ur FROM smart_ure WHERE mesec = '$x ' ");
echo "<table border='1'>
<tr>
<th>ime</th>
<th>stevilo_ur</th>
</tr>";
while ( $db_v = mysqli_fetch_assoc($result) ) {
echo "<tr>";
echo "<td>" . $db_v['ime'] ."</td>";
echo "<td>" . $db_v['stevilo_ur'] ."</td>";
echo"</tr>";
}
echo "</table>";
mysqli_close($conn);
if (isset ($_GET['update']))
{
echo $tbl;
die ();
}
编辑:
<form method="post" id="test_form">
Mesec: <select id="meseci">
<option value="o"> </option>
<option value="1">Januar</option>
<option value="2">Februar</option>
</select><br><BR>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$.ajaxSetup({ cache: false });
$(document).on('change','select[#meseci]',function(){
$post('tabela.php',$('#test_form').serialize()).done(function(results){
$('#results').html(results);
});
});
></script>
<div id="results"</div>
答案 0 :(得分:2)
考虑您当前页面scanf()
div
。现在,在您的脚本文件中,您可以使用id=result
标记上的onChange()
来使用ajax获取数据。
JS脚本:
select
在您的表单中添加ID,在上面的脚本中我使用了$(document).on('change','select[name="meseci"]',function(){
$.post('tabela.php',$('#test_form').serialize()).done(function(result){
$('#result').html(result);
});
});
。
id=test_form
更新您的表单标记:
<form action="tabela.php" method="post" id="test_form">
另外,从您的选择标记中删除<form method="post" id="test_form">
。
onChange
答案 1 :(得分:0)
在@jaysingkar的帮助下,我们得到了它的工作。以下是答案:
<form method="post" id="test_form">
Mesec: <select id="meseci" name="meseci">
<option value="o"> </option>
<option value="1">Januar</option>
<option value="2">Februar</option>
</select><br><BR>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$.ajaxSetup({ cache: false });
});
$(document).on('change','#meseci',function(){
$.post('tabela.php',$('#test_form').serialize()).done(function(result){
$('#result').html(result);
});
});
</script>
<div id="result"</div>