var msg = "${msg?default("")}";
$().ready(function() {
$("#form").validate({
rules: {
workflowName1: 'required', },
messages: {
workflowName1: '名称不能为空',
}
});
if(msg)
alert(msg);
});
但是,由于我ID为form的表单里面的东西是动态添加的,譬如当再添加多一个Input的时候,其ID为workflowName2,总个数为i;
那么这个时候,怎么写才能使validate能够动态判断呢?
我试过直接
var test ="workflowName1";
var msg = "${msg?default("")}";
$().ready(function() {
$("#form").validate({
rules: {
test : 'required', },
messages: {
test : '名称不能为空',
}
});
if(msg)
alert(msg);
});
发现test变量和函数里面的根本都不是同一个来的,也就是不能直接用外面var定义的变量
我JS不怎么会用,希望指教一下 谢谢
5 个解决方案
#1
$("#myinput").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input",
minlength: jQuery.format("Please, at least {0} characters are necessary")
}
});
多看手册
#2
谢谢楼上的回答,但是你的那个是不是指定ID为myinput的来操作的吧.但是现在我的ID是变化的.就是可能有workflowName1,然后还有workflowName2,workflowName3这样,我需要对他们都设置判断部位空
#3
你既然能动态产生元素,那么为什么不在产生元素的同时,去添加规则呢。。。
$('#click').click(function(){
//获取当前元素的ID
var id = “xxxx”;
//添加了元素
addElement(id);
//为什么不在这里添加validate的规则
$("#"+id).rules("add", {});
});
#4
哦哦,谢谢楼上咯,就是在动态增加ID的函数内加上$("#"+id).rules("add", {});
不过,为啥
$().ready(function() {
$("#form").validate({});
}
的函数只能在这当前页面而不能写在JS文件中呢.然后这个写在当前页面...我动态添加的也要写在当前页面,不然$("#"+id).rules("add", {});么用
白啊白,不过小问题咯..谢谢您的回答
不过,为啥
$().ready(function() {
$("#form").validate({});
}
的函数只能在这当前页面而不能写在JS文件中呢.然后这个写在当前页面...我动态添加的也要写在当前页面,不然$("#"+id).rules("add", {});么用
白啊白,不过小问题咯..谢谢您的回答
#5
var init = false;
function init() {
$("#form").validate({});
init = true;
}
function addelement() {
//获取当前元素的ID
var id = “xxxx”;
//添加了元素
addElement(id);
if(!init) {
init();
}
//为什么不在这里添加validate的规则
$("#"+id).rules("add", {});
}
#1
$("#myinput").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input",
minlength: jQuery.format("Please, at least {0} characters are necessary")
}
});
多看手册
#2
谢谢楼上的回答,但是你的那个是不是指定ID为myinput的来操作的吧.但是现在我的ID是变化的.就是可能有workflowName1,然后还有workflowName2,workflowName3这样,我需要对他们都设置判断部位空
#3
你既然能动态产生元素,那么为什么不在产生元素的同时,去添加规则呢。。。
$('#click').click(function(){
//获取当前元素的ID
var id = “xxxx”;
//添加了元素
addElement(id);
//为什么不在这里添加validate的规则
$("#"+id).rules("add", {});
});
#4
哦哦,谢谢楼上咯,就是在动态增加ID的函数内加上$("#"+id).rules("add", {});
不过,为啥
$().ready(function() {
$("#form").validate({});
}
的函数只能在这当前页面而不能写在JS文件中呢.然后这个写在当前页面...我动态添加的也要写在当前页面,不然$("#"+id).rules("add", {});么用
白啊白,不过小问题咯..谢谢您的回答
不过,为啥
$().ready(function() {
$("#form").validate({});
}
的函数只能在这当前页面而不能写在JS文件中呢.然后这个写在当前页面...我动态添加的也要写在当前页面,不然$("#"+id).rules("add", {});么用
白啊白,不过小问题咯..谢谢您的回答
#5
var init = false;
function init() {
$("#form").validate({});
init = true;
}
function addelement() {
//获取当前元素的ID
var id = “xxxx”;
//添加了元素
addElement(id);
if(!init) {
init();
}
//为什么不在这里添加validate的规则
$("#"+id).rules("add", {});
}