【问题标题】:jquery, select input field by class name, then work out it's value contains a special characterjquery,按类名选择输入字段,然后计算出它的值包含一个特殊字符
【发布时间】:2015-01-09 11:31:22
【问题描述】:

我需要的是...... 我目前正在开发一个 spring mvc 项目。 在我的一个 JSP 上,我有几个输入文本字段:

<form:input path="objectPath1" class="cartonInputField"/>
<form:input path="objectPath2" class="cartonInputField"/>
<form:input path="objectPath3" class="cartonInputField"/>
<form:input path="objectPath4" class.="cartonInputField"/>

所以当我通过 jquery 选择这些输入文本字段时,我希望检查它们中的每一个是否包含术语 'coma',如果在任何地方找到这个术语 'coma',将其替换为空字符串'',并发出警报();

这是我的签名:

$(document).ready(function(){

    $('.cartonInputField').each(function(){
        var input = $(this);
        if (input.val().indexOf('coma') > -1) {
            $(this).val('');
            alert('must not contain term - coma!');
        }
    })

})

目前它不起作用,我不知道出了什么问题...... 任何人都可以帮我提供代码示例。谢谢

【问题讨论】:

  • 您想在什么时候验证输入?在页面加载时验证一次似乎毫无意义(这就是现在发生的情况)。此外,如果存在多个“昏迷”,则多个警报将变得非常烦人。请解释总体目标。
  • 请更正您的 HTML...您在第 4 个条目上有一个 class.= :)
  • 在 jsfiddle 上签出这个我已经修改了一点 jsfiddle.net/2qs0mcae
  • 我有一个提交按钮,比如 ,我想要的是......当我点击提交时,验证每个文本字段值,如果看到 'coma',则替换为空字符串
  • @imran qasim:当任何字段发生更改时,您正在验证所有字段......您肯定只是想验证更改的字段吗?

标签: jquery spring-mvc input jquery-selectors textfield


【解决方案1】:

您需要捕获表单提交并将您的检查代码放在那里。

JSFiddle 模型: http://jsfiddle.net/TrueBlueAussie/63xkgo7p/

使用filter 来查看是否有任何 个字段符合该条件并且只报告一次错误:

例如

$(document).ready(function () {
    $('form').submit(function () {
        if ($(this).find('.cartonInputField').filter(function () {
            if ($(this).val().indexOf('coma') > -1) {
                $(this).val("");
                return true;
            }
            return false;
        }).length) {
            alert('must not contain term - coma!');
            // Stop form submitting
            return false;
        }
    });
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 1970-01-01
    相关资源
    最近更新 更多