我正在为ajax调用构建数据。我正在使用jquery。
我的功能(简化)如下。 我想在vname和vemail上使用jquery serialize(),但看起来你只能在表单变量上执行此操作。有没有办法用普通的vars做到这一点,还是我需要做一些其他事情来使这些变量对于ajax调用安全?
由于
function sendEmailNotify(vname, vemail, docID){
$.ajax({
type: "POST",
url: "/servlet/trainingServlet",
data: ({method: 'ajaxEmailNotify',vname: vname , vemail: vemail }),
dataType: 'json',
success: function(data){
if ( data.success != "OK" ){
alert(data.message);
}
}
});
}
答案 0 :(得分:4)
可以在包含一个或多个表单的jQuery对象上调用jQuery .serialize()
函数,或者包含一组特定表单输入元素的jQuery对象,并返回一个带有所有表单的URL参数字符串这些价值观。
如果代码中的vname
和vemail
引用了输入元素,那么您可以创建一个包含这些元素的jQuery对象,然后调用.serialize()
。但是,如果它们只是值,那么您不需要对它们做任何其他事情。
作为一个半相关的注释,你不需要围绕你传递给data
属性的对象的括号 - 我不知道这是否会导致问题,但是因为它们没有用处在那里你也可以删除它们。