8

通过disabled在输入上使用属性可以防止用户输入并触发稍微不同的外观。
这是演示http://jsfiddle.net/D2RLR/3023/

假设我想将相同的样式应用于不同的 TAG,例如表格。
事实上,我正在使用handsontable生成一个Excel-like data grid editor.
我如何disabled attribute在以下情况下申请(像表格一样的标签)?

这是使用handsontablebootstrap http://jsfiddle.net/D2RLR/3025/的演示

4

4 回答 4

7

您不能应用 Bootstrap 的现有input[disabled]样式,但可以添加完全模仿样式的新 CSS。

例如:

#exampleGrid td {
    cursor: not-allowed;
    background-color: #EEE;
    color: #9E9999;
}

显然这不包括您的只读逻辑,并且您的小提琴看起来有点奇怪(因为列和行标题是相同的颜色),但这就是它的要点。

于 2012-10-31T00:38:08.067 回答
6

在这里检查:

http://handsontable.com/demo/conditional.html

.readOnly细胞属性 - 使用它!

HTML 输入也有readonly属性,不仅仅是disabled属性,它们的行为之间存在一些相当大的差异。

于 2012-10-31T00:11:55.690 回答
0

也许这可以帮助...更改单元格的外观,您可以对其进行编辑。

HTML

<table class="editableTable">
    <thead>
        <tr>
            <th>Code</th>
            <th>Name</th>
            <th>E-mail</th>
            <th>Telephone</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>001</td>
            <td>João Carlos</td>
            <td>joca@email.com</td>
            <td>(21) 9999-8888</td>
        </tr>
        <tr>
            <td>002</td>
            <td>Maria Silva</td>
            <td>mariasilva@mail.com</td>
            <td>(81) 8787-8686</td>
        </tr>
        <tr>
            <td>003</td>
            <td>José Pedro</td>
            <td>zepedro@meuemail.com</td>
            <td>(84) 3232-3232</td>
        </tr>
    </tbody>
</table>

CSS

* {
    font-family: Consolas;
}

.editableTable {
    border: solid 1px;
    width: 100%
}

.editableTable td {
    border: solid 1px;
}

.editableTable .editingCell {
    padding: 0;
}

.editableTable .editingCell input[type=text] {
    width: 100%;
    border: 0;
    background-color: rgb(255,253,210);
}

JS

$(function () {

    $("td").dblclick(function () {
        var originalContent = $(this).text();

        $(this).addClass("editingCell");
        $(this).html("<input type='text' value='" + originalContent + "' />");
        $(this).children().first().focus();

        $(this).children().first().keypress(function (e) {
            if (e.which == 13) {
                var newContent = $(this).val();
                $(this).parent().text(newContent);
                $(this).parent().removeClass("editingCell");
            }
        });

        $(this).children().first().blur(function(){
            $(this).parent().text(originalContent);
            $(this).parent().removeClass("editingCell");
        });
    });

});
于 2013-12-17T19:05:13.407 回答
0

Boostrap 仅根据其禁用属性对输入进行样式设置,例如:

input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] {
    background-color: #EEEEEE;
    cursor: not-allowed;
}

所以你将无法使用引导程序来做到这一点,因为表没有这样的属性。

您应该使用各种插件或滚动您自己的插件。

于 2012-10-31T00:22:18.580 回答