jquery - Bootstrap - 如何在回调验证中使用 ajax

标签 jquery twitter-bootstrap validation

我有一个输入元素列表,其 id 将生成为 user[0].firstName、user[1].firstName... 现在我想为所有这些输入编写一个通用验证器。因此,我向它们添加了一个名为 userName 的类,并尝试使用远程验证器,但我无法获取触发验证器的字段的值。如果其中任何一个能起作用就好了。

                firstName: {
                  selector: '.userName',
                  validators: {
                    remote: {
                      url: '/servers/checkName',
                      type: 'POST',
                      dataType: "json",
                      data: function() {

                        // var user_name = document.getElementById("user0.firstName").value+"";
                        //here i need to get the value of field which called this validator
                        return {
                          name: user_name
                        };

                      },
                      message: ' user name is already exist'
                    },
                    callback: {
                      callback: function(value, validator, $field) {
                        alert($field + " " + value);
                        return :{
                            //here im not able to ajax call like this
                            ajax({
                              url: '/servers/checkName',
                              type: 'POST',
                              dataType: "json",
                              data: value,
                              success: function(response) {
                                return response;
                              }
                            })


                          },
                          message: 'User Call back!'
                      }

                    }
                  },


                }

最佳答案

我认为回调与ajax结合起来是行不通的,因为ajax请求的响应是异步的。所以根据文档here ,我们应该使用远程验证器。它在我的项目中运行良好。

您必须像这样更改远程验证器:

remote: {
    url: '/servers/checkName',
    data: function(validator) {
        return {
            name: validator.getFieldElements('firstName').val()
        };
    },
}

关于jquery - Bootstrap - 如何在回调验证中使用 ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31822484/

相关文章:

javascript - 将所选项目移动到已排序多选的顶部(Javascript)

javascript - 如何获取select2 :unselect的值

javascript - 如何制作列数未知且每列大小相等的网格布局?

asp.net - 具有多个验证组的页面始终为 Page.IsValid 返回 TRUE

javascript - Chrome 无法进行 jquery 表单验证

javascript - 可变高度,可滚动 div,内容 float

jquery - CoffeeScript:将 jQuery Ajax 调用的数据存储在变量中

php - 将 Bootstrap 模式部分 View 动态插入 View 中

css - Twitter bootstrap - 带有可滚动侧边栏的固定布局

无效字符的 C# 正则表达式