我正试图使用ajax从表单向mysql数据库发送值。我通过获取表单的父项目,然后获取id="email"的子元素来选择值,如您所见。。。
var email = $(this).parent("article").children("#email").val() //gets the user's email
然而,当我将数据发送到php文件上传到mysql数据库时,它似乎做错了什么,并且没有存储键入的值,而是存储了一个函数(如下所示)。。。这是怎么回事!?
function (a) {var c,d,e,g=this[0];{if(!!arguments....
您可以尝试find()
方法:
.children()方法与.find()方法的不同之处在于,.childred()只在DOM树中向下移动一个级别,而.find)也可以向下遍历多个级别来选择子元素(孙元素等)。
var email = $(this).parent("article").find("#email").val()
看起来有点令人困惑。您使用的是#email,这意味着一个id,页面上只能有一个id。jQuery将识别该标签,并默认使用本机的"getElementById"浏览器方法。
所以这个:
var email = $(this).parent("article").children("#email").val()
可以转换为:
var email = $("#email").val()