我有一个只显示一些mysql数据库的组合。我还有一个创建数据库的表单。我想动态刷新组合(如果可能)以显示由表单创建的新数据库。这是代码的片段:
<div id="tools">
<P>Add a Set list:<br>
<LABEL for="labelName">Set List Name: </LABEL>
<INPUT type="text" name="slName" id="slName"><button id="createSL" value="Create Setlist">Create Set</button>
</P><br>
<P>Delete a Set list:<br>
<? include("remSLcombo.php"); ?> <button href="#" type="button" id="delSl">Delete Setlist</button>
</P>
<p>Check how to reload combos</p>
</div><BR>
<? include("combo.php"); ?>
调用Jquery函数来创建数据库:
$('#createSL').click(function(){
var sendIt = $("#slName").val();
$.ajax({
type: "POST",
url: "createSL.php",
data: {slName : sendIt},
error: function(e){
alert("The PHP Call failed! hmmm");
alert(e.status);
},
success: function(response){
alert(response);
}
});
$("#selcombo").load("combo.php");
$("#tools").hide().html(data).fadeIn('fast');
});
Combo.php:
<?php
echo '<select id="tunelist" name="tunelist" >';
$link = mysql_connect('localhost', 'setlist', 'music');
$query = mysql_query("SHOW DATABASES");
echo '<option>Select a Show</option>';
while ($row = mysql_fetch_assoc($query)) {
if ($row['Database'] == "information_schema"){}
elseif ($row['Database'] == "performance_schema"){}
elseif ($row['Database'] == "mysql"){}
else{
echo '<option value="'.$row['Database'].'">'.$row['Database'].'</option>';
}
}
echo '</Select>';
?>
在使用上面的表格添加数据库后,如何刷新组合中的值(由combo.php制作)?
任何帮助一如既往地非常感谢!
洛伦
答案 0 :(得分:0)
您需要做的是在createSL.php
中返回新组合框的代码并加载到那里。
这是你的代码
success: function(response){
alert(response);
}
写下类似的内容:
success: function(response){
$('#tunelist').html(response);
}
响应类似于Combo.php
答案 1 :(得分:0)
尝试移动
$("#selcombo").load("combo.php");
到success
函数内部:
success: function(response){
alert(response);
if (response == true) // or something like this to ensure the success of the operation
$("#selcombo").load("combo.php");
}