0

我有一个 JSTL 的 forEach 循环的 TextArea 列表,就像这样:

<c:forEach var="test" items="${data}">
   <td><textarea class="no-resize" name="submit-${test}"></textarea></td>
</c:forEach>

我想知道哪个 TextArea 已更改,以及使用 JQuery 单击按钮时它是否为空

按钮是这样的

<button class="btn " type="submit" form="controller" name="save" value="save" id="save" onClick="return onSave()">Save</button>

这是我到目前为止所尝试的:

function onSave()
        {
             $('.no-resize1').each(function(){
                 $(this).change(function(){
                    if(!$(this).val() == ''){
                        return true;
                    } else {
                        return false; 
                    }
                 });
             });

        };

我究竟做错了什么?

4

1 回答 1

0

首先,您的按钮应该是这样的:

<button class="btn " type="submit" form="controller" name="save" value="save" id="save" onClick="onSave">Save</button>

其次, .change() 绑定指定的函数,以便每次 DOM 节点触发更改事件时,您指定的函数都会更改。这可能是您需要的:

function onSave() {
    $('.no-resize1').each(function(){
       if(!$(this).val() == ''){
           return true;
       }
    });
    return false;
};

此函数遍历所有具有类 .no-resize1 的 DOM 节点,如果所有文本区域都为空,则返回 false,否则返回 true。

于 2013-09-29T09:55:36.133 回答