SQL 与 JS 的动态下拉列表

发布于 2024-09-14 00:34:19 字数 971 浏览 4 评论 0原文

请帮忙,我有一个动态 JS 表,因此您可以通过单击按钮来添加和删除行。我需要在行中添加的一个字段是一个选择框,没有问题,我使用以下内容:

var cell2 = row.insertCell(1);
var sel = document.createElement('select');
sel.name = 'selRow' + rowCount;
sel.options[0] = new Option('text zero', 'value0');
sel.options[1] = new Option('text one', 'value1');
cell2.appendChild(sel);

因此,上面创建了一个选择框,使用 rowCount 根据行 ID 进行命名。我遇到的困难是我需要动态填充选项,我可以使用以下命令使用 php 来完成此操作,但它链接了我遇到的 JS 和 PHP:

$getProd_sql = 'SELECT * FROM products';
$getProd = mysql_query($getProd_sql);                 
$prov = "<select name=\"product\" id=\"product\" onChange=\"testajaxprod();\">";
$prov .= " <option value=\"0\" selected=\"selected\">Select Product</option>";
        while($row = mysql_fetch_array($getProd))
        {
            $prov .= "<option value=\"$row[product_id]\">$row[product_name]</option>";
        }
$prov .= "</select>";

非常感谢您的帮助。

谢谢, B.

Please help, I have a dynamic JS table, so you can add and delete rows by clicking a button. One field that I need to add within the row is a select box, no problem so for and I use the following:

var cell2 = row.insertCell(1);
var sel = document.createElement('select');
sel.name = 'selRow' + rowCount;
sel.options[0] = new Option('text zero', 'value0');
sel.options[1] = new Option('text one', 'value1');
cell2.appendChild(sel);

So the above creates a select box, named based on the row ID using rowCount. Where I’m stuck is I need to dynamically populate the options, I can do this with php using the following, but it is linking the JS and PHP that I’m stuck on:

$getProd_sql = 'SELECT * FROM products';
$getProd = mysql_query($getProd_sql);                 
$prov = "<select name=\"product\" id=\"product\" onChange=\"testajaxprod();\">";
$prov .= " <option value=\"0\" selected=\"selected\">Select Product</option>";
        while($row = mysql_fetch_array($getProd))
        {
            $prov .= "<option value=\"$row[product_id]\">$row[product_name]</option>";
        }
$prov .= "</select>";

Your help is very much appreciated.

Thanks,
B.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小红帽 2024-09-21 00:34:19

您可以在 JS 中间添加 PHP。 PHP 将首先运行并为您留下一个包含值的文件,就像我的魔法一样。

要从 PHP 填充而不是以文本形式生成数据,您可以这样做。

$getProd_sql = 'SELECT * FROM products';
$getProd = mysql_query($getProd_sql);   
while($prod = mysql_fetch_object($getProd))
{
  ?>
     var text = documentElement.createElement('select');
     documentElement.value = <?=$prod->value?>
  <?
}

请注意使用 .还可以让您免于写“echo”或其他任何内容。您必须用下拉菜单或其他内容替换简单的文本框。

希望这有帮助

You can add PHP in the middle of your JS. PHP will run first and leave you with a file containing the values as if my magic.

To populate from PHP instead of producing your data in text you can do this.

$getProd_sql = 'SELECT * FROM products';
$getProd = mysql_query($getProd_sql);   
while($prod = mysql_fetch_object($getProd))
{
  ?>
     var text = documentElement.createElement('select');
     documentElement.value = <?=$prod->value?>
  <?
}

Notice the way you can break in and out of PHP with . Also saves you from writing "echo" or anything. You will have to replace the simple text box with your dropdowns or whatever.

Hope this helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文