我有姓名文本框和地址文本框。当页面加载时,我使用jQuery函数去设置禁用一些复选框和其他文本框。
当我在本地调试时它们工作正常,但是当发布到生产时,具有只读权限的用户无法选择和复制名称文本框和地址文本框(这些jquery函数不会触及这两个文本框),这些文本框是刚冻结(对于只读用户禁用名称文本框和地址文本框 - 从安全页面设置)。
拥有完全权利的开发者没有这个问题。
我试图从这些文本框背后的代码中设置焦点,似乎没有工作。
在我的页面中,我在IE上设置了禁用兼容模式。
非常感谢任何帮助。
编辑:这是我的代码
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
<link href="../styles/jquery-ui.css" rel="stylesheet" />
<script src="../js/jquery-2.1.4.min.js" type="text/javascript"></scriptt>
<script src="../js/jquery-ui-1.11.4.min.js"></script>
</head>
<body>
<form id="form" runat="server"
<asp:Label ID="lblName" runat="server" >Name:</asp:Label>
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:Label ID="lblAddress" runat="server" >Name:</asp:Label>
<asp:TextBox ID="txtAddress" runat="server"></asp:TextBox>
<asp:CheckBox ID="chkNew" runat="server" Text="New?"></asp:CheckBox>
<asp:CheckBox ID="chkOld" runat="server" Text="Old?"> </asp:CheckBox>
</br>
<asp:Label ID="lblType" runat="server" >Type:</asp:Label>
<cc1:ELMSDropDownList ID="cboType" runat="server" AddEmpty="true" TableName="TYPE"
OnSelectedIndexChanged="cboType_SelectedIndexChanged" AutoPostBack="True" >
<asp:Button ID="cmdSave" runat="server" OnClick="cmdSave_Click"
Text=" Save "></asp:Button>
</form>
<script type="text/javascript">
function Changecbx()
{
if (strType=="something")
{
$("#chkNew").prop("disabled", false);
$("#chkNew").prop("disabled", true);
}
return true;
}
function Validate()
{
//jquery validation
}
</body>
这是我背后的代码
protected void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
cmdSave.Attributes.Add("onclick", "return Validate()");
cboType.Attributes.Add("onchange", "return Changecbx()");
txtName. Attributes.Add("readonly", "readonly");
txtAddress. Attributes.Add("readonly", "readonly");
}
}
答案 0 :(得分:1)
将这些输入设置为readonly
而不是disabled
,但要对它们进行设置,使其看起来已禁用。