我有一个telerik下拉列表,默认情况下禁用:
<%= Html.Telerik().DropDownList().Name("YesNo").Enable(false)
.Items(items => {
items.Add().Text("").Value("");
items.Add().Text("Yes").Value("Yes");
items.Add().Text("No").Value("No");
})%>
现在我想在有人为另一个telerik下拉列表选择“否”时启用它:
<%= Html.Telerik().DropDownList().Name("Validate")
.Items(items => {
items.Add().Text("").Value("");
items.Add().Text("Yes").Value("Yes");
items.Add().Text("No").Value("No");
})
.ClientEvents(events =>
{
events.OnChange("Validate_OnChange");
})%>
所以我尝试了这个jquery方法来启用,但它没有启用ddl:
function Validate_OnChange(e) {
if($("#Validate").val() == "No"){
$('#YesNo').attr('Enable',true);
}
}
为Validate DDL渲染标记:
<div class="t-widget t-dropdown t-header" style="width:249px;" tabindex="0">
<div class="t-dropdown-wrap t-state-default">
<span class="t-input">
</span>
<span class="t-select">
<span class="t-icon t-arrow-down">select
</span>
</span>
</div>
<input id="Validate" name="Validate" style="display:none" type="text">
</div>
答案 0 :(得分:1)
您可以尝试使用removeAttr
。
function Validate_OnChange(e) {
if($("#Validate").val() == "No"){ // Enable
$("#YesNo").removeAttr("disabled");
} else { // Disable
$("#YesNo").attr("disabled", "disabled");
}
}
<%= Html.Telerik().DropDownList().Name("YesNo").Enable(false)
.Items(items => {
items.Add().Text("").Value("");
items.Add().Text("Yes").Value("Yes");
items.Add().Text("No").Value("No");
})%>
<%= Html.Telerik().DropDownList().Name("Validate")
.Items(items => {
items.Add().Text("").Value("");
items.Add().Text("Yes").Value("Yes");
items.Add().Text("No").Value("No");
})
.ClientEvents(events =>
{
events.OnChange("Validate_OnChange");
})%>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
function Validate_OnChange(e) {
if ($("#Validate").val() == "No") {
$("#YesNo").data("tDropDownList").enable();
}
else {
$("#YesNo").data("tDropDownList").disable();
}
}
</script>
答案 1 :(得分:0)
尝试使用简单的javascript
function Validate_OnChange(e) {
var ddlValidate = $find('<%= Validate.ClientID %>');
ddlValidate.disable();
}