当值在新行的末尾处于初始值时,请输入错误消息

时间:2014-06-01 12:00:09

标签: javascript jquery html css

我有内联创建的表格,即您点击添加行,它会打开您可以放置​​数据的可编辑行,并且您可以在可编辑的行中保存按钮。

当用户点击按钮保存按钮时('#btnsubmit')我希望如果属性名称是初始的,则在表格行的右侧以红色添加错误消息,我没有理念 怎么做,有什么想法吗?

td><input id="btnsubmit" type="submit" value="Create" class="btn btn-default" /></td><td></tr>';

        function addRow() {
            if ($('#btnsubmit').length == 0) {

                jQuery(html).prependTo('#data-table');

                $('#btnsubmit').click(function () {
                $('#checkBox1').attr('disabled', 'true');
                $('input').attr('readonly', true);
                $('input[type=checkbox]').attr('readonly', true);
                });

            }
        }


 var html = '<tr><td>@Html.TextBox("name")</td><td>@Html.CheckBox("checkBox1")</td>input id="btnsubmit" type="submit" value="Create" class="btn btn-default" /></td><td></tr>

更新

$('#btnsubmit').click(function () {

            $(".errmsg").remove();
            $(".err").removeClass('err');

            var row = $(this).parent();
            var nameval = document.getElementById('name');
            var val = nameval.value;
            if (val.trim().length < 1) {
                nameval.addClass('err');
                var err = $("<div class='errmsg'>field empty</div>");
                row.after(err);

在nameval.addClass的行中(&#39; err&#39;);我在inspect元素中出错了 uncouget error:undefined不是函数,有什么想法吗?

1 个答案:

答案 0 :(得分:2)

这或多或少是你想要的......

http://jsfiddle.net/GHw9q/3/

基本上我更新了你的addnew-button点击处理程序:

 $('.addnew-button').click(function(){
        $(".errmsg").remove();
        $(".err").removeClass('err');            

        var _row = $(this).parent();
        var _input = _row.children('.data-category');
        if (_input.val().trim().length<1) {
            _input.addClass('err');
            var _err = $("<div class='errmsg'>field empty</div>");
            _row.after(_err);
        }
        else {
            $(this).remove();
            initRowEvents(jQuery(document));
        }

    });

并添加了一些CSS ..检查出来..如果您有任何疑问,请告诉我


如果使用变量html:

var html = '<tr><td>@Html.TextBox("name")</td><td>@Html.CheckBox("checkBox1")</td><td><input id="btnsubmit" type="submit" value="Create" class="btn btn-default" /></td></tr>';

首先请注意,我已修复了变量中的一些错误..

代码应与上述相同,只有_input变量应更改为:

   var _input = _row.find('input').filter(":first");

**这取决于您的姓名&#39;输入字段为tr ..

中的第一个输入