用于显示asp:基于所选选项的TextBox的JavaScript

时间:2013-12-03 09:00:16

标签: javascript html asp.net

我刚刚开始开发ASP.NET项目的一些部分,但我对它的经验很少。问题几乎与这个问题的标题中描述的一样,这里是代码:

<script type="text/javascript" src="/scripts/hide.fields.js"></script>   

<divs and divs...>

<asp:DropDownList class="dropdown expand" ID="EligibleUK" onchange="visaCheck(this.ListItem.GetValue());" runat="server">
                        <asp:ListItem
                            Enabled="True"
                            Text="Choose..."
                            Value=""
                        />
                        <asp:ListItem
                            Enabled="True"
                            Text="Yes (UK/EU Cittizen)"
                            Value="Yes (UK/EU Cittizen)"
                        />
                        <asp:ListItem
                            Enabled="True"
                            Text="Yes (Work Visa)"
                            Value="Yes (Work Visa)"
                        />
                        <asp:ListItem
                            Enabled="True"
                            Text="No"
                            Value="No"
                        />
                    </asp:DropDownList>

我的JS文件的内容:

function visaCheck(visa) {
if (visa === "Yes (Work Visa)"){
    document.getElementById(visa1).style.display = "block";
    document.getElementById(visa2).style.display = "block";
}else{
    document.getElementById(visa1).style.display = "none";
    document.getElementById(visa2).style.display = "none";
}   

}

现在我在html中尝试了不同的东西(。严格说来。)我调用了JS函数代码,例如:

this.ListItem
asp:ListItem
ListItem.Value
this.ListItem.Value
this.ListItem.Value()
this.ListItem.GetValue()

包括最明显的一个(this.value),它使用标准的html文件和jsfiddle。在ASP.NET中有没有具体的方法?我错过了什么,我该如何解决这个问题?谢谢你的回答。

2 个答案:

答案 0 :(得分:1)

尝试更改:

<asp:DropDownList class="dropdown expand" ID="EligibleUK" onchange="visaCheck(this.options[this.selectdIndex].value);" runat="server">

答案 1 :(得分:0)

我在自己的问题下发布了答案,因此更加明显。我没有参数调用js函数,我的javascript现在看起来像这样:

function visaCheck() {
var visa = document.getElementById('Content_EligibleUK');
var selectedIndex = visa.selectedIndex;
var value = visa.options[selectedIndex].value

if (value === "Yes (Work Visa)"){
    document.getElementById("visa1").style.display = "block";
    document.getElementById("visa2").style.display = "block";
}else{
    document.getElementById("visa1").style.display = "none";
    document.getElementById("visa2").style.display = "none";
}   

}

希望这有助于将来的某些人:)