簡體   English   中英

復選框標簽已啟用禁用

[英]checkbox label enabled disabled knockoutjs

我有使用淘汰賽來操縱控件的啟用/禁用模式的html表單。

我有可以通過按鈕操作的文本框控件和復選框控件,如果單擊了按鈕,則可以對其進行編輯,否則將被禁用。

復選框控件正在發生問題,因為它們具有在其周圍添加啟用/禁用類的標簽,因此,盡管已從復選框控件中刪除了disabled屬性,但標簽仍然具有disabled屬性並且無法使用。

這就是我所擁有的:

<table width="95%" data-bind="with: settings">
    <tr>
        <td style="width:20%" valign="top">q1<br />
            <label class="label_yesno">
                <input type="checkbox" data-bind="checked: prop_2, enable: editMode" />
            </label>
        </td>
        <td style="width:5%"></td>
        <td valign="top">q2<br />
            <label class="label_yesno">
                <input type="checkbox" data-bind="checked: prop_34, enable: editMode" />
            </label>
        </td>
    </tr>
    <tr>
        <td></td>
    </tr>
    <tr>
        <td valign="top">q3
                <br />
            <label class="label_yesno">
                <input type="checkbox" data-bind="checked: prop_52, enable: editMode" />
            </label>
        </td>
        <td></td>
        <td valign="top">q4:<br />
            <input type="text" style="width: 95%" data-bind="value: prop_12, enable: editMode" />
        </td>
    </tr>
</table>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
    string script = @"
    function settingsViewModel() { 
        return {
            prop_2: ko.observable(false),
            prop_12: ko.observable(''),
            prop_34: ko.observable(false),
            prop_52: ko.observable(false)
        };
    };";
    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "settingsvm", script, true);
}
</script>

在初始加載時,控件被禁用:

在此處輸入圖片說明

當我單擊編輯按鈕時,正在發生這種情況:

在此處輸入圖片說明

如您所見,disabled屬性從復選框中刪除,但沒有從包裝該復選框的標簽中刪除。

知道我該如何解決嗎?

標簽的css類名稱為“ disabled”,輸入的HTML禁用屬性為HTML。 淘汰賽對他們的控制方式不同。 使用css綁定來控制類。

<label class="label_yesno" data-bind="css:{disabled:editMode}">
    <input type="checkbox" data-bind="checked: prop_2, enable: editMode" />
</label>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM