gpt4 book ai didi

Javascript 基于一个下拉弓中的值更改其他 2 个下拉框中的值

转载 作者:行者123 更新时间:2023-11-28 13:41:43 25 4
gpt4 key购买 nike

基于示例https://stackoverflow.com/a/13104169/2465936想要创建这样的行为:

fiddle :http://jsfiddle.net/rigaconnect/Ppbk5/17/

3个下拉框。用户在第一个下拉框中选择值。例如,如果用户在第一个下拉框中选择选项 2 或选项 3,则第二个和第三个下拉框中的值将更改为空白 <option value="4"></option>

这是 HTML

<select id="asset_id" name="asset[asset_id]">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4"></option>
</select>
<br />
<select id="country_id" name="material[country_id]">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4"></option>
</select>
<br />
<select id="country_id1" name="material1[country_id1]">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4"></option>
</select>

这是 javascript

<script type="text/javascript">

$(document).ready(function(){
var ddl1 = document.getElementById( 'asset_id' );
function updateCountry ( e ) {

var asset = this.options[ this.selectedIndex ].value, countryDDL= document.getElementById( 'country_id' ), country, i = countryDDL.options.length - 1;

switch ( asset ) {
case "2": country = 4;
break;
case "3": country = 4;
break;
}

for ( ; i > -1 ; i-- ) {
if ( countryDDL.options[i].value == country ) {
countryDDL.options[i].selected = true;
break;
}
}

}

ddl1.onchange = updateCountry;
});

</script>


<script type="text/javascript">

$(document).ready(function(){
var ddl2 = document.getElementById( 'asset_id' );
function updateCountry1 ( e ) {

var asset1 = this.options[ this.selectedIndex ].value, countryDDL1= document.getElementById( 'country_id1' ), country1, i = countryDDL1.options.length - 1;

switch ( asset1 ) {
case "2": country1 = 4;
break;
case "3": country1 = 4;
break;

}

for ( ; i > -1 ; i-- ) {
if ( countryDDL1.options[i].value == country1 ) {
countryDDL1.options[i].selected = true;
break;
}
}

}

ddl2.onchange = updateCountry1;
});

</script>

代码更改<option value="4"></option>仅在一个下拉框中。我只是复制粘贴 JavaScript 并修改变量和值。某事做错了。并且可能可以用一段 JavaScript 代码来完成。

您能指出哪些地方不正确吗?

更新

根据答案,可以使用此类代码

function blank() {
if ( document.getElementById('assed_id').selectedIndex == 2 ) {
document.getElementById('country_id').selectedIndex=4;
document.getElementById('country_id1').selectedIndex=4;
}
}

但是如果使用 php 数组和 foreach 创建下拉框,需要考虑如何更改 javascript....

最佳答案

第一个选择选项添加更改方法以空白其他两个选择选项

<select id="asset_id" name="asset[asset_id]" onchange="blank(this.value)">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4"></option>
</select>

在脚本中添加空白函数来设置其他选择选项的值

<script>
function blank(ch)
{
if(ch!=1)
{
document.getElementById('country_id').selectedIndex=4;
document.getElementById('country_id1').selectedIndex=4;
}

}
</script>

关于Javascript 基于一个下拉弓中的值更改其他 2 个下拉框中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17445722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com