使用表单数据通过ajax将数据发送到PHP
Send data to PHP with ajax using formdata
解决方案:我不得不放弃sumbmit按钮并使用常规按钮。此代码的其余部分正常工作。我还删除了HTML表单。
我正在尝试使用表单数据用ajax向我的php脚本发送一个图像+一些文本。这就是我得到的:
$ajax_uploadImage = function (form)
{
var data = new FormData();
data.append('title', form.find('#title').val());
data.append('comment', form.find('#comment').val());
data.append('image', form.find('#image').prop('files')[0]);
$.ajax({
url: '../php/upload_image.php',
data: data,
type: 'POST',
processData: false,
contentType: false,
success: function (data) {
alert('something');
}
});
}
函数参数中的表单是一个普通的html表单,这里是html:中的表单
<form enctype="multipart/form-data" id="upload_image">
<label for="title">Title:</label>
<input type="text" id="title" name="title" />
<br />
<label for="comment">Comment:</label>
<input type="text" id="comment" name="comment" />
<br />
<label for="image">Image:</label>
<input type="file" id="image" name="image" />
<br />
<input type="submit" value="Upload picture" name="submit">
<hr />
</form>
成功的警觉性永远不会触发,有人能帮上忙吗?
编辑:添加PHP,即使它什么都不做:
<?php echo 'something'; ?>
现在您正在FormData
中存储一个jQuery对象,该对象无法工作。请改用这些元素的值。在文件输入的情况下,您需要使用DOM元素的files
属性中的File
对象:
data.append('title', form.find('#title').val());
data.append('comment', form.find('#comment').val());
data.append('image', form.find('#image').prop('files')[0]);
尝试添加表单操作,如:
<form enctype="multipart/form-data" id="upload_image" action="upload_image.php">
相关文章:
- PHP:显示sqlite数据库中的html格式数据,使用tinymce保存
- 巨大的数据和PHP错误
- 在php中提交数据时,如果某些值为null,而某些值为非null,如何进行查询
- json-ajax动画防止通过php发送数据
- Jquery:对返回JSON数据的php脚本的Ajax调用
- 在php和mysql中选择选项.一旦选择了选项,就列出我的sql数据库数据
- 如何在没有ajax的情况下将javascript动态数据发送到php变量
- 将数据保存到数据库(ajax/php)后,使文本字段变灰/禁用
- 为什么数据没有从ajax传递到php
- 如何将JavaScript变量的数据传递到另一个php页面
- 使用外部ajax数据PHP绘制图表
- IE不发送发布数据PHP&jQuery
- 如何将数据 php 更改为 javascript json
- 如何插入数据 PHP JavaScript MySQL 与多个数组
- 将数据PHP(客户端)传递给C#(服务器端)
- 跨会话保存数据- php
- 从AJAX调用操作数据:PHP或Javascript
- 如何在jQuery中获取数据- PHP中的多重标签选择
- Ajax显示动态数据php在html下拉
- 使用azax &获取数据;php