Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.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_Php_Select - Fatal编程技术网

Javascript 存在条件时如何选择特定选项

Javascript 存在条件时如何选择特定选项,javascript,php,select,Javascript,Php,Select,当条件存在时,我想在下拉列表中选择特定选项。我在php中设置会话,如果组合框的值为1,它将显示值为1的选项。我的意思是,如果会话为1,选择值为1的选项,如果会话为2,选择值为2的选项,依此类推。我想设置automatically selectI,以便在php中查看会话的更改。 像blewo这样的东西: <select id="sel" > <option value='1'>one</option> <option value='2'>tw

当条件存在时,我想在下拉列表中选择特定选项。我在php中设置会话,如果组合框的值为1,它将显示值为1的选项。我的意思是,如果会话为1,选择值为1的选项,如果会话为2,选择值为2的选项,依此类推。我想设置automatically selectI,以便在php中查看会话的更改。 像blewo这样的东西:

<select id="sel" >
  <option value='1'>one</option>
  <option value='2'>two</option>
  <option value='3'>three</option>
</select>
 <?php $_SESSION['num']='1'; ?>
<script>
  //must be shown the option with value of `1`.
<script>

只需使用所选属性设置值

<select id="sel" >
  <option value='1' selected>one</option>
  <option value='2'>two</option>
  <option value='3'>three</option>
</select>
 <?php $_SESSION['num']='1'; ?>
<script>
  //alternately, set it explicitly
  var element = document.getElementById('sel');
element.value = 1;
<script>
试试这个

<select id="sel" >
  <option value='1'>one</option>
  <option value='2'>two</option>
  <option value='3'>three</option>
</select>
 <?php $_SESSION['num']='1'; ?>
<script>

    //set local variable value so that I don't have to do it for each of the following ways to do this.
    var num =  "<?php echo $_SESSION['num']; ?>";

    //normal javascript 
    document.getElementById("sel").value = num;

    //using jQuery  
    $("#sel").val(num);

<script>

或者试试看,你不一定需要js来做这件事。您可以简单地使用php,因为您已经从会话中获取了num。 最简单的方法是:

<select id="sel" >
    <?php if($_SESSION['num'] == 1): ?>
        <option value='1' selected>one</option>
    <?php else: ?>
        <option value='1'>one</option>
    <?php endif; ?>
    <option value='2'>two</option>
    <option value='3'>three</option>
</select>
但是,如果您特别想在这里使用javascriptjQuery,您可以这样做:

<script>
    $(document).ready(function(){
        var num = <?php echo $_SESSION['num']; ?>;

        $('#sel > option').each(function(){
            if($(this).val() == num){
                $(this).prop('selected', true);
            }
        });
    });
</script>
这是一个例子


有很多方法可以做到这一点。这就是我将采取的方法,我相信其他人也可以提供同样可行或可能更好的答案。

设置选择值有什么问题?你用谷歌搜索过吗?这并不是OP所要求的。这真是一个实现结果的庞大方法。OP提到他们可以使用JS,为什么不这样做呢?
<script>
    $(document).ready(function(){
        var num = <?php echo $_SESSION['num']; ?>;

        $('#sel > option').each(function(){
            if($(this).val() == num){
                $(this).prop('selected', true);
            }
        });
    });
</script>