【问题标题】:select onchange update php value选择 onchange 更新 php 值
【发布时间】:2016-04-13 10:59:24
【问题描述】:

我想在不刷新页面的情况下将选择与输入文本“连接”

这是我的例子

<select name="name_select" id="my_select">
  <option value="1">first</option>
  <option value="2">first</option>
  <option value="3">first</option>
</select>

<?php ...query(SELECT name FROM table WHERE id = value) ?>

那么在 var $name 中有来自 db 的值

<input type="text" value="<?php echo $name; ?>" />

我认为我必须使用 jquery post/get 但是如何只更新我需要检查 db 的 var?

【问题讨论】:

  • AJAX 就是为此而生的
  • 你可以通过ajax调用来实现它,因为ajax不会刷新你的页面。添加有问题的 Ajax 标记。

标签: php jquery select onchange


【解决方案1】:

就像 Thamizhan 在评论中所说,您需要使用 AJAX。

这是一个简单的例子:

HTML (index.html)

<select name="name_select" id="my_select">
  <option value="1">first</option>
  <option value="2">first</option>
  <option value="3">first</option>
</select>

JS

$('#my_select').on('change', function () {
    var selectData = $(this).val();
    $.ajax({
        type: "POST",
        url: "custom.php",
        data: {'selectData': selectData },
        success: function (json) {
            // do things
        }
    });
}

PHP (custom.php)

if (isset($_POST['selectData'])) {
    var_dump($_POST['selectData']); // $_POST['selectData'] is the selected value
    // query here
    // and you can return the result if you want to do some things cool ;)
}

【讨论】:

    【解决方案2】:
    $("#my_select").on("change", function () {
       $.ajax({
            url: "phpfile.php",
            method: 'POST',
            data: {val: $(this).val()},
            success: function (data) {
                $("[type='text']").val(data);
    
            }
        });
    });
    

    在phpfile.php中

    include("db.php");
    
    // ... your code ...
    
    // execute sql(SELECT name FROM table WHERE id = value) and return value.
    

    【讨论】:

      【解决方案3】:

      请清除一件事为什么您需要在这里进行 sql 查询。

      <option value="1">first</option>
      

      first 是名称,1 是那里的选项。那么我们可以不使用sql和ajax将first或1放入输入框。

      仅使用 jquery

      $(document).ready(function(){
        $("#my_select").change(function(){
      
          var thisval = $(this).val();    
          $("input").val(thisval);
        });
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-02-22
        • 1970-01-01
        • 2019-10-28
        • 2011-02-25
        • 1970-01-01
        • 1970-01-01
        • 2023-03-05
        • 2015-07-19
        相关资源
        最近更新 更多