【问题标题】:Jquery onchange issue in phpphp中的jquery onchange问​​题
【发布时间】:2018-06-21 12:14:36
【问题描述】:

实际上,标签的onchange需要更改并显示实际记录,例如(如果更改男士意味着男士记录将打开(显示))我需要在选项值中传递变量将如何传递。

这是我的 Html 代码:

<select name="category" id ='category' onchange='gender(this)' style="background:transparent">
                  <option id ='gender' hidden="hidden">Gender</option>
                <?php foreach($mens as $row){?>
                  <option value="men">Boy's</option>
                  <option value="girl">Girl's</option>
                <?php }?>
              </select>

这是我的 jquery 代码:

<script type="text/javascript">
    $(function () {
        $("#category").change(function () {
            var selectedText = $(this).find("option:selected").text();
            var selectedValue = $(this).val();
              $( "#list" ).submit();
            alert("Selected Text: " + selectedText + " Value: " + selectedValue);
        });
    });
</script>

这里是我的 PHP 代码:

$men ="SELECT * FROM `tbl_master_property` where status=0";
    $men_result=$conn->query($men);
     $men_projects = array();
        while($row=mysqli_fetch_assoc($men_result)){ 
        $men_projects[] = $row;
        }
         $mens = $men_projects; 
         echo '<pre>'; print_r($mens);die; 

我打印我的 $mens 它是显示:

Array
(
    [0] => Array
        (
            [pg_id] => 1
            [name] => Sri Manikanta New Luxury Paying Guest For Men
            [gender] => 0
            [location_id] => 0

        )
    [1] => Array
        (
            [pg_id] => 2
            [name] => Srivari New Executive Paying Guest For Men
            [gender] => 0
            [location_id] => 0

        )
    [2] => Array
        (
            [pg_id] => 3
            [name] => Temple View New Executive Pg For Ladies
            [gender] => 1
            [location_id] => 0

        )
    [3] => Array
        (
            [pg_id] => 4
            [name] => Srinivasa Luxury Guest For Men
            [gender] => 1
            [location_id] => 0   
        )

【问题讨论】:

  • 哪一部分不工作?
  • html 部分不起作用,先生,如何将值传递给选项值
  • 您是在谈论让$mens 数组填充&lt;option&gt; 吗?所以会是&lt;option name="0"&gt;Sri Manikanta New Luxury Paying Guest For Men&lt;/option&gt; 等?

标签: php jquery html mysql


【解决方案1】:

我认为您正在尝试从 $mens 数组中获取选项:

<?php foreach($mens as $row){?>
    <option value="<?php echo $row['gender'] ?>"><?php echo $row['name'] ?></option>
<?php }?>

如果这不是你的意思,你可能需要澄清更多。


编辑 1:

如果你有一个大的项目列表来绘制,你会想要使用 ajax,但如果你的样本相对较小,你可以想象只使用一个数组来绘制。

演示:https://jsfiddle.net/z50m5hnz/

<select name="category" id ='category' style="background:transparent">
    <option id ='gender' hidden="hidden">Gender</option>
    <option value="men">Men's</option>
    <option value="girl">Ladies</option>
</select>

<select name="items" id="items">
<select>

<script type="text/javascript">
    var dropdown_items = <?php echo json_encode($mens) ?>;
    $(function () {
        $("#category").change(function () {
            var selectedText = $(this).find("option:selected").text();
            var selectedValue = $(this).val();
            var opts = [];
            $.each(dropdown_items,function(k,v){
                if(selectedValue == 'men' && v.gender == 0) {
                    opts.push('<option name="'+v.gender+'">'+v.name+'</option>');
                }
                else if(selectedValue == 'girl' && v.gender == 1) {
                    opts.push('<option name="'+v.gender+'">'+v.name+'</option>');
                }
            });

            $('#items').html(opts.join(''));
        });
    });
</script>

编辑 2:

这是我最后一次猜测你想要什么,来自 cmets 我想也许你想重新加载页面但发送值选择:

<script type="text/javascript">
    $(function () {
        $("#category").change(function () {
            var selectedValue = $(this).val();
            window.location =   '?select='+selectedValue;
        });
    });
</script>

【讨论】:

  • 对不起先生,如果下拉菜单有两个值(男士和女士)如果我点击男士意味着男士记录将显示页面
  • 哦,您的意思是您想选择&lt;option value="men"&gt;Men's&lt;/options&gt;,它将获取男士数组并填充另一个下拉列表以供选择?那么$mens数组中的两个mens数组呢?
  • 好吧,我现在不明白你的意思了......你想从下拉列表中选择mengirl,然后它会自动将你带到一个新页面,然后拉男性或女性的数据?你说的是这个吗?
  • 所以要更改,提交表单还是只发送选定的值?哪一个?
  • 只需提交表单
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-07-08
  • 2011-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-22
相关资源
最近更新 更多