我在我的asp页面中使用了一个asp按钮和一个telerik radcombobox,而这个按钮最初是从标记中禁用的。当用户从radcombobox框中选择一项时,OnClientSelectedIndexChanged事件将被触发,此时我将启用该按钮。但是一旦它被启用,并且我点击了按钮,它在回发后再次被禁用。
<telerik:RadComboBox ID="rcbModel" runat="server" Skin="MetroTouch" Width="100%"
EmptyMessage="Select Model" Height="120px" OnClientSelectedIndexChanged="OnClientSelectedIndexChanged">
<Items>
<telerik:RadComboBoxItem runat="server" Text="Model 1" />
<telerik:RadComboBoxItem runat="server" Text="Model 2" />
</Items>
</telerik:RadComboBox>
<asp:Button ID="btnAdd" runat="server" Text="Add" Enabled="false" />脚本:
function OnClientSelectedIndexChanged() {
$('#<%=btnAdd.ClientID %>').prop("disabled", false);
}回发后启用按钮的最佳方式是什么?
发布于 2014-06-11 15:46:07
您可以尝试将更新面板放在您的Add Button上。
发布于 2014-06-11 15:02:14
保留javascrit代码,并在回发时做同样的工作,在后台代码中,检查racombobox的项目,如果它更改了启用您的按钮。
btnAdd.Enabled = true;发布于 2014-06-18 23:31:07
保持JavaScript和RadComboBox标记相同,并从按钮的标记中删除Enabled="false"代码。在页面的服务器端Page_Load事件中,根据是否选择了值来设置按钮的Enabled属性:
public void Page_Load(object sender, EventArgs e)
{
btnAdd.Enabled = (rcbModel.SelectedIndex > -1);
//...
}当RadComboBox的空消息文本显示时,在您的示例"Select Model“中,SelectedIndex值将为-1。
https://stackoverflow.com/questions/24155750
复制相似问题