【问题标题】:Textbox fill empty value every time while changing the db dropdown value每次更改数据库下拉值时,文本框都会填充空值
【发布时间】:2018-12-13 12:36:53
【问题描述】:

我有一个下拉框和一个文本框。我希望当我选择下拉值时,它将根据数据库下拉选择自动填充匹配的数据库文本框值。

这是我的代码:-

下拉菜单和文本框:-

<select name="product" required>
 <option value=""></option>
 <?php                          
  while($productRow = mysqli_fetch_assoc($productResult)){?>
  <option value="<?php echo $productRow['ID'];?>">
  <?php echo $productRow['Category']; ?></option><?php } ?>
</select>

<input placeholder="Phone Number" name="phoneNumber" id="pnum"  type="text">

脚本:-

 <script>
    $(document).ready(function(){
     $('select[name="product"]').change(function()
        {
     $('#pnum').val($('select[name="product"] option:selected').data('Mobile'));
        }

     );
     });

     </script>

现在每次下拉值更改时,文本框都会填充空值。 请多多帮助。

【问题讨论】:

  • 听起来很痛苦。只需让您的 。提交时发送的信息将是一系列选定的产品。比拆分和处理文本项要容易得多。
  • @jeff 感谢您的建议,我在下拉列表中添加了“多个”。现在也无法传递值
  • 你把 [] 放在 name='product[]' 吗?
  • @jeff 现在我把
  • .data('Mobile') - 你究竟想在这里访问什么?在此之前我没有看到你在任何地方设置过这样的数据,那么你认为你会在这里读到什么?

标签: javascript php mysql ajax database


【解决方案1】:

你需要把html改成

<select name="product[]" size=20 multiple required>
 <?php                          
  while($productRow = mysqli_fetch_assoc($productResult)){?>
  <option value="<?php echo $productRow['ID'];?>">
  <?php echo $productRow['Category']; ?></option><?php } ?>
</select>

然后删除该脚本,因为它不再需要。所有项目的选择都在&lt;select&gt; 元素中完成。

在服务器端,您将获取产品数组中的值。

【讨论】:

    猜你喜欢
    • 2023-03-29
    • 2018-07-08
    • 2012-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    相关资源
    最近更新 更多