Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法在表列中可用的下拉列表中显示动态值_Javascript_Jquery_Html - Fatal编程技术网

Javascript 无法在表列中可用的下拉列表中显示动态值

Javascript 无法在表列中可用的下拉列表中显示动态值,javascript,jquery,html,Javascript,Jquery,Html,我有一个简单的html表格,有多行,其中一列有下拉列表,可以动态填充值。 我的代码在表的下拉列表中显示值时遇到了一些问题,我想在“选择产品”列下显示的所有下拉列表中显示相同的值 演示链接: 示例代码如下: //用值填充下拉列表 函数populateSelect(ids){ var productDropdown=$(“#产品”); log(“productDropdown值:”+productDropdown); $.each(id,function(){ $(“”)。附件(productDr

我有一个简单的html表格,有多行,其中一列有下拉列表,可以动态填充值。 我的代码在表的下拉列表中显示值时遇到了一些问题,我想在“选择产品”列下显示的所有下拉列表中显示相同的值

演示链接:

示例代码如下:

//用值填充下拉列表
函数populateSelect(ids){
var productDropdown=$(“#产品”);
log(“productDropdown值:”+productDropdown);
$.each(id,function(){
$(“”)。附件(productDropdown);
});
}

PID
精选产品
100
200
300
400

我认为您遇到的问题是如何初始化数据
body onload=“populateSelect('TestProduct');
首先,为了成功地
$。each()
通过ID,您需要将它们作为
数组而不是
字符串传递

既然您有jQuery,我建议您使用
$(document).ready(function(){});
如下:

编辑:忘记在调用
$。each()时忘记提及
函数第一次,回调函数需要
索引
的参数,因此如果您选择这样做,您可以将它们作为
键=>值
对进行迭代。否则,您可以在选项构建中使用
参数,如:

var选项=“”+value+“”;


要使所有下拉列表的值都为“Test Product”,请使用以下代码,不需要循环

function populateSelect(ids) {
    var productDropdown = $(".dropdown select");
    console.log("productDropdown va " + productDropdown);
    $(`<option>${ids}</option>`).appendTo(productDropdown);
}
函数populateSelect(ids){
var productDropdown=$(“.dropdown select”);
log(“productDropdown va”+productDropdown);
$(`${ids}`).appendTo(productDropdown);
}

$。每个接收一个数组/对象,“TestProduct”是一个字符串。请查找更新后的代码演示。该值显示在表中下拉列表中的引号中。任何不在下拉列表中显示引号的输入。我想这篇文章将帮助您解决这个问题!
<table id="productTable" border="1">
    <thead>
    <tr>
        <th>PID</th>
        <th>Select Product</th>
    </tr>
    </thead>
    <tbody>
      <tr>
         <td>100</td>
         <td class="dropdown">
                  <select name="filter_for" class="product">
                     <option value=""> </option>
                     </select>
          </td>
      </tr>
      <tr>
         <td>200</td>
         <td class="dropdown">
                  <select name="filter_for" class="product">
                     <option value=""> </option>
                     </select>
          </td>
      </tr>
      <tr>
         <td>300</td>
         <td class="dropdown">
                  <select name="filter_for" class="product">
                     <option value=""> </option>
                     </select>
          </td>
      </tr>
      <tr>
         <td>400</td>
         <td class="dropdown">
                  <select name="filter_for" class="product">
                     <option value=""> </option>
                     </select>
          </td>
      </tr>
    </tbody>
</table>
function populateSelect(ids) {
    var productDropdown = $(".dropdown select");
    console.log("productDropdown va " + productDropdown);
    $(`<option>${ids}</option>`).appendTo(productDropdown);
}