没有与$ .post一起发送任何内容
function clicked()
{
var $contact_title=$("#contact_title");
var $contact_summary=$("#bbcode");
alert($contact_title.val());// How do I get the contents of the title
alert($contact_summary.val());// How do I get the contents of the textarea
$.post('jquery_send_admin.php',{ title:$contact_title, content:$contact_summary }, function(data){ alert("Message was sent") }, 'html');
}
我在控制台错误中遇到异常,如下所示:
更新: 没有数据插入下一页..为什么?!?
if( isset($_POST["title"]) && isset($_POST["content"]) )
{
$title=mysql_escape_string($_POST["title"]);
$content=mysql_escape_string($_POST["content"]);
$result=mysql_query("INSERT INTO users (query_title,query_message) VALUES(''$title', '$content')") or die(mysql_error());
}
发生以下错误:
Error: uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js :: <TOP_LEVEL> :: line 16" data: no]
更新: 这是我从页面请求的内容,由jquery触发:
<?php
echo 'outside';
if( isset($_POST["title"]) && isset($_POST["content"]) )
{
echo 'inside';
$title=mysql_escape_string($_POST["title"]);
$content=mysql_escape_string($_POST["content"]);
$result=mysql_query("INSERT INTO users (query_title,query_message) VALUES(''$title', '$content')") or die(mysql_error());
}
?>
答案 0 :(得分:5)
您需要使用.val()
方法提取值:
var $contact_title = $('#contact_title').val();
var $contact_summary = $('#bbcode').val();
var dataToPost = { title: $contact_title, content: $contact_summary };
$.post('jquery_send_admin.php', dataToPost, function(data) {
alert('Message was sent');
}, 'html');
答案 1 :(得分:1)
尝试获取值/文本而不仅仅是控件。
var $contact_title=$("#contact_title").text();
或
var $contact_title=$("#contact_title").val();
编辑:
不确定它在PHP中是如何工作的,但是我在vb.net中使用它,在那里我需要给出我的控制器名称(也就是文件)和功能,所以它变成了
$.post('myFile/myJSONFunction', {all-your-parameters});
所以也许这就是为什么它不会发布您的数据。 您可能想要查看的其他内容是您的php可能会返回与您实际期望他返回的数据不同的数据。
答案 2 :(得分:1)
var $contact_title=$("#contact_title").text(); var $contact_summary=$("#bbcode").text();
答案 3 :(得分:0)
function clicked() {
var $contact_title = $("#contact_title");
var $contact_summary = $("#bbcode");
alert($contact_title.val()); // with the val
alert($contact_summary.val()); // with the val
$.post('jquery_send_admin.php', { title: $contact_title.val(), content: $contact_summary.val() }, function (data) { alert("Message was sent") }, 'html');
}
答案 4 :(得分:0)
而不是@Darin发布的
$.post('jquery_send_admin.php', dataToPost, function(data) {
alert('Message was sent');
}, 'html');
使用此
$.post('jquery_send_admin.php', dataToPost, function(data) {
alert(data);
});
这将在警告框中显示echo语句的结果,这可能有助于您调试问题。
答案 5 :(得分:0)
哦,我的。 jQuery错误,PHP调试错误。我可能会得到这个答案的低价...但有时候,如果你迷失了人们不得不帮助你过马路,那么简单地阅读手册是有帮助的:http://api.jquery.com/&amp; http://php.net/manual/