0

だから私は現在クロスブラウザコードに取り組んでいます。特定の関数が呼び出された後に無効にするチェックボックスがありますが、IE にはありますが、Firefox と Chrome にはありません。

コードを調べたところ、Firefox でレンダリングすると、無効化されたタグが に配置されていることがわかりました。tdこれが、他のブラウザーではなく IE で機能する理由です。

セルまたはチェックボックスを無効にして、Firefox、Chromeなどで適切にレンダリングする方法はasp.netにありますか?

これが私の関数で、enabled = false

protected void FilterCheckBox(object sender, ASPxGridViewTableCommandCellEventArgs e)
{
    if (ExecContractGridView != null)
    {
        try
        {
            if (ExecContractGridView.GetRowValues(e.VisibleIndex, "UnionExecutedBy") != null)
            {
                if (!string.IsNullOrEmpty(ExecContractGridView.GetRowValues(e.VisibleIndex, "UnionExecutedBy").ToString()))
                {
                    e.Cell.Enabled = false;
                }
            }
        }
        catch (Exception ex)
        {
            ApplicationLog.Exception(this, ex);
        }
    }
}
4

1 に答える 1

0

これを適切に行うには、チェックボックス コントロールを見つけて を設定しdisabled = "disabled"ます。

JavaScript または jQuery などのライブラリを使用して、クライアント側でこれを行うことができます。または、上記のコードで、一度コントロールをe.Cell見つけて に設定できます。CheckBoxEnabled = false

さらに明確にするために、コントロールをその子コントロールの 1 つとしてe.Cell含みます。CheckBoxしたがって、次のことができます。

var control = e.Cell.FindControl("SomeCheckBoxControl") as CheckBox;
if (control != null)
    control.Enabled = false;
于 2012-07-05T18:02:30.927 に答える