使用PHP和Javascript在默认HTML Select上运行函数

使用PHP和Javascript在默认HTML Select上运行函数,javascript,php,html-select,Javascript,Php,Html Select,我尝试在HTMLSELECT上运行默认函数,但默认函数不适用于默认的Select值,但它适用于用户选择 <?php $status_selected = 'A002'; ?> <!-- HTML Select 1 --> <select id="state" class="l" name="state" onchange="Func()"> <option value="A001" <?php if($status_selected ==

我尝试在HTMLSELECT上运行默认函数,但默认函数不适用于默认的Select值,但它适用于用户选择

<?php
    $status_selected = 'A002';
?>
<!-- HTML Select 1 -->
<select id="state" class="l" name="state" onchange="Func()">
<option value="A001" <?php if($status_selected == "A001") echo "selected"; ?> data_item=" , StateA003 One, A003 State Two, A003 State Three">A001</option>
<option value="A002" <?php if($status_selected == "A002") echo "selected"; ?> data_item=" , A003 State One, A003 State Two, A003 State Three">A002</option>
<option value="A003" <?php if($status_selected == "A003") echo "selected"; ?> data_item=" , A003 State One, A003 State Two, A003 State Three">A003</option>
</select>
<!-- HTML Select 2 -->
<label for="city">Item : </label><select id="city" name="item" class="l"  onchange="onSelected()">

数据_item=“、A003状态一、A003状态二、A003状态三”>A002

不确定是否相关,但也许你想要一个盒子?如果没有,请澄清你的问题,很难理解


编辑:所以真正的问题是通过代码选择正确的选项。在这种情况下,这是的副本

在中(如果脚本位于页面底部,则在函数之后),也运行
Func()
,然后设置
#city
的值:

Func();
var state = document.getElementById('state'),
    city = document.getElementById('city'),
    selectedCity = state.getAttribute('data-selected-city');
if(selectedCity) {
    city.value = selectedCity;
}
您需要将所选城市存储在某个位置,我的建议是将其添加到选择:

<select id="state" data-selected-city="new-york">
<!--and so on--->
</select>

注意:在HTML5中设置数据属性,而不是下划线。所以它是
data item=“”
,而不是
data\u item=“”
。这将在运行HTML验证程序时向您发出警告。

退出PHP标记:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
之后:

item.options[item.options.length] = new Option(arr[i],arr[i]);
请输入代码:

$(item).prop("selectedIndex",i);

什么是默认函数?谢谢,但我的问题是我想以编程方式选择项,我找不到解决方案,但通过用户选择它工作得很好是的,它工作得很好,谢谢
item.options[item.options.length] = new Option(arr[i],arr[i]);
$(item).prop("selectedIndex",i);