submitHandler: function(form) {
var dataString = $('#YourFormID').serialize();
$.ajax({
type: 'POST',
url: 'yourpage.php',
data: dataString,
success: function() {
$('#YourErrorDivID').hide();
$('#YourSuccessDivID').html("Your Message").show();
}
});
}
如何通过此代码发送文件?使用此代码我无法发送文件。 什么是数据类型:json,如果我从jQuery文件中获取它,如何在我的php文件中使用它?
编辑:我没有要求代码,我已经尝试使用上面的代码发送文件输入数据,但它不起作用。所以我想知道如何修复这段代码,这样它也会发送文件输入值&常规数据(如textarea等)
答案 0 :(得分:0)
我只做了一次,所以我不是专家,这让我很困惑,但我想我能回答你。假设你的文件中有这样的东西:
var dataString = {
page_num: page
};
然后可以在yourpage.php上像这样引用它,因为它是通过post发送的:
$requested_page = $_POST['page_num'];
JSON仍然让我困惑,但它是一种存储数据的方式。我相信它通常是一种阵列。 PHP具有函数json_encode
和json_decode
以允许您使用它。例如,您收到$json
,这是json格式的数据,然后您:
$x = json_decode($json,TRUE);
var_dump($x);
这应该使它成为一个关联数组。
更新:
how to send/upload file using jquery or javascript? 根据这个问题,您无法使用jquery上传文件。我认为您也不应该尝试,因为有些人在浏览器上禁用了javascript。我在我的网站上使用jquery进行美学和无限滚动,并且很快就会在js被停用时运行一个分页功能。您的网站至少基本上无需js即可访问。 http://www.youtube.com/watch?v=bfD51iRTAXU&list=PLE134D877783367C7&index=45 如果您不知道这个教程,那么本教程将以html的形式显示文件上传的基础知识(尽管它不是一个很棒的教程,我发现它在我学习时非常有用,并且是一个很好的起点)。
如果您已经使用php,SQL和html上传了一个文件,那么您可以使用它的文件名/文件路径来引用它,如该教程所示。所以你可以通过jquery发送文件名/文件路径,如果你想使用jquery来构建动态内容,只需在另一端使用它。