Javascript ajax post数据错误[object HTMLCollection]
我写这个脚本是为了在我的网站上创建一个联系人表单,但是一切都正常,而不是将数据存储在我的数据库中all is get isJavascript ajax post数据错误[object HTMLCollection],javascript,jquery,ajax,Javascript,Jquery,Ajax,我写这个脚本是为了在我的网站上创建一个联系人表单,但是一切都正常,而不是将数据存储在我的数据库中all is get is [对象HTMLCollection]c 有人告诉我这是什么吗? 还是出了什么问题?我已经在谷歌上看过了,但是我找不到很多关于它的信息 <script type="text/javascript"> //when the button is clicked $(document).ready(function() { $("#bu
[对象HTMLCollection]
c
有人告诉我这是什么吗?
还是出了什么问题?我已经在谷歌上看过了,但是我找不到很多关于它的信息
<script type="text/javascript">
//when the button is clicked
$(document).ready(function() {
$("#button").click(function() {
$('.small').hide();
var name = $("input#name").val();
if (name == "") {
$("span#name").show();
return false;
}
var name = $("input#email").val();
if (name == "") {
$("span#email").show();
return false;
}
var name = $("input#subject").val();
if (name == "") {
$("span#subject").show();
return false;
}
var name = $("textarea#message").val();
if (name == "") {
$("span#message").show();
return false;
}
var dataString = 'name='+ name + '&email=' + email + '&subject=' + subject + '&message=' + message;
$.ajax({
type: "POST",
url: "/scripts/send_message.php",
data: dataString,
});
$("#messagearea").load("console/new_message_profile.php?sent=1");
});
});
</script>
//单击按钮时
$(文档).ready(函数(){
$(“#按钮”)。单击(函数(){
$('.small').hide();
变量名称=$(“输入名称”).val();
如果(名称==“”){
$(“span#name”).show();
返回false;
}
var name=$(“输入#电子邮件”).val();
如果(名称==“”){
$(“电子邮件”).show();
返回false;
}
变量名称=$(“输入对象”).val();
如果(名称==“”){
$(“主题”).show();
返回false;
}
var name=$(“textarea#message”).val();
如果(名称==“”){
$(“span#message”).show();
返回false;
}
var dataString='name='+name+'&email='+email+'&subject='+subject+'&message='+message;
$.ajax({
类型:“POST”,
url:“/scripts/send_message.php”,
数据:dataString,
});
$(“#messagearea”).load(“console/new#message_profile.php?sent=1”);
});
});
您正在对所有其他字段重复使用变量name
。您需要将字段名更改为相应的输入id
var name = $("input#email").val(); // needs to be email
var name = $("input#subject").val(); // needs to be subject
正如@Namit所提到的,您在任何地方都使用
name
作为变量。构建字符串时,电子邮件
、主题
和消息
未初始化
他们应该给你一个未定义的
,
——但是不行,因为Internet Explorer有一种奇怪的行为(请参阅),这些变量包含DOM元素。由于您似乎有多个具有相同id的元素(永远不要这样做),这里有一个
和一个
,变量甚至似乎包含HTMLCollection
对象。当您将它们与其他字符串连接时,它们被强制转换到字符串[object HTMLCollection]
。所有的变量名都与name
相同,并且您试图传递未在AJAX中初始化的变量。请缩进适合阅读的代码。您的代码几乎不可读。请考虑适当的压痕和间距。