为了账号安全,请及时绑定邮箱和手机立即绑定

我正在尝试根据选择显示 txt 文件中的数据值

我正在尝试根据选择显示 txt 文件中的数据值

PHP
守候你守候我 2023-10-22 21:56:17
我正在尝试根据选择显示 txt 文件中的数据值<?php$lines = file('customers.txt');?><select class="select" style="width: 250px;" name="mylist" id="mylist" required="">        <option selected="selected" value="">Select Your Company</option>        <?php foreach($lines as $line){       $customers = explode(',', $line);        echo "<option value='".$customers[0]."'>$customers[0] </option>"; }?></select><input type="text" id="inputid" placeholder="Company Name">和我尝试的js<script>    $(".select").change(function(){  var res = $(".select").find(":selected").map(function () {    if($(this).val()!="")      return $(this).text();    else      return "";   }).get().join("");     $("#inputid").val(res); });</script>我的customers.txt数据文件:-客户1、街道、分机号、邮政编码Customer2,B 街道,B 分机,B 邮政编码Customer3,C 街,C 分机,C 邮政编码...ETC在选择 Customer1 时,我想显示在 :-Customer1A 街道A 分机号A 邮政编码
查看完整描述

2 回答

?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

您需要以某种方式在客户端代码(js)中传递您想要的数据。现在,您只需将客户名称嵌入 html 中,即可从 js 访问该名称(通过选项值)。如果您还想访问剩余数据,则需要传递它。一种解决方案可能是jquery 支持的data html 属性 。

<?php

$lines = file('customers.txt');

?>


<select class="select" style="width: 250px;" name="mylist" id="mylist" required="">

        <option selected="selected" value="">Select Your Company</option>

        <?php foreach($lines as $line){

       $customers = explode(',', $line);

        echo '<option value="'.$customers[0].'" data-line="'.$line.'">'.$customers[0].'</option>'; }?>

</select>


<input type="text" id="inputid" placeholder="Company Name">


<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>


<script>

  $("#mylist").change(function(){

      var line = $(this).find('option:selected').data('line');

    $("#inputid").val(line);

  });

</script>

在这里,我添加一个名为 line 的数据属性data-line="'.$line.'",其中包含文件中的整行,并将其添加到每个选项标记中。


然后在js中可以读取所选选项的数据属性var line = $(this).find('option:selected').data('line');。


如果您需要更多地控制文件中的可用内容,您可以使用文件中选定的列引入多个数据属性,或者将其作为 json 字符串并在 js 中读取您想要的内容。


查看完整回答
反对 回复 2023-10-22
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

我想这可能对你有用?


<?php

$lines = file('customers.txt');

?>


<select class="select" style="width: 250px;" name="mylist" id="mylist" required="">

  <option selected="selected" value="">Select Your Company</option>

<?php

foreach ($lines as $line_num => $line) {

  $customers = explode(',', $line);

    echo "  <option value='{$customers[0]}' data-street='{$customers[1]}' data-extension='{$customers[2]}' data-zipcode='{$customers[3]}'>{$customers[0]}</option>";

}

?>

</select>


<textarea id="inputid" rows="4" cols="50" placeholder="Company Name"></textarea>


<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha256-4+XzXVhsDmqanXGHaHvgh1gMQKX40OUvDEBTu8JcmNs=" crossorigin="anonymous"></script>

<script>

$("#mylist").change(function() {

  var street = $('select option[value=' + this.value + ']').data('street');

  var extension = $('select option[value=' + this.value + ']').data('extension');

  var zipcode = $('select option[value=' + this.value + ']').data('zipcode');


  $("#inputid").val(street + '\n' + extension + '\n' + zipcode);

});

</script>


查看完整回答
反对 回复 2023-10-22
  • 2 回答
  • 0 关注
  • 62 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信