[英]Dynamically created select box not accepting option added by function
我這里有一小段代碼,它連接到名為karaoke的數據庫並填充選擇框。 我只希望能夠在索引0處添加一個選擇框選項,上面寫着“請選擇”。 我嘗試了多種方法在PHP,HTML和Javascript中執行此操作,但沒有找到我需要的解決方案。 到目前為止,這段代碼在Chrome調試器中顯示0個錯誤,但未達到我的預期。 有人可以告訴我我在做什么錯嗎?
<!DOCTYPE HTML>
<html>
<head>
<title>Add Singer</title>
</head>
<body>
<center><label style = "color: white; font-family:arial; font-size: 24px">Select a Regular</label></center>
<?php
$con = mysqli_connect("localhost","root","","karaoke");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "Select * FROM regulars ORDER BY Regulars ASC";
$result = mysqli_query($con, $sql) or die("Bad SQL: $sql");
$opt = "<select id = 'regulars' name = 'regulars'>";
while($row = mysqli_fetch_assoc($result)) {
$opt .= "<option value'{$row['Regulars']}'>{$row['Regulars']}</option>\n";
}
$opt .="</select>"
?>
<center> <div id="regulars">
<?php
echo $opt;
?>
</div> </center>
<script>
function myFunction() {
var x = document.getElementById("regulars");
var option = document.createElement("option");
option.text = "Please Select";
x.add(option, x[0]);
}
</sript>
myFunction()
</body>
</html>
您有一個帶有id =“ regulars”的div標簽。 在打印出包含選擇元素的$ opt變量之前,該變量也帶有id =“ regulars”。 Javascript代碼正在查找具有“ regulars” id的第一個元素,該元素將是div。 嘗試更改div的ID。
如注釋中所述, myFunction函數調用應位於腳本標簽中。 選項標簽的value屬性應包含= 。
<!DOCTYPE HTML>
<html>
<head>
<title>Add Singer</title>
</head>
<body>
<center><label style = "color: white; font-family:arial; font-size: 24px">Select a Regular</label></center>
<?php
$con = mysqli_connect("localhost","root","","karaoke");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "Select * FROM regulars ORDER BY Regulars ASC";
$result = mysqli_query($con, $sql) or die("Bad SQL: $sql");
$opt = "<select id = 'regulars' name = 'regulars'>";
while($row = mysqli_fetch_assoc($result)) {
$opt .= "<option value='{$row['Regulars']}'>{$row['Regulars']}</option>\n";
}
$opt .="</select>"
?>
<center> <div id="regularsDiv">
<?php
echo $opt;
?>
</div> </center>
<script>
function myFunction() {
var x = document.getElementById("regulars");
var option = document.createElement("option");
option.text = "Please Select";
x.add(option, x[0]);
}
myFunction();
</script>
</body>
</html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.