我已经用Yii2开发了我的应用程序。我已经使用了kartik ajax文件上传。当我们点击Kartik的upload按钮时,它会发送ajax请求,在该请求中,它会将文件上传到服务器。
我想在特定表单的ajax请求开始之前捕获一个事件。
这是php代码:
use kartik\widgets\FileInput;
<?php $form = ActiveForm::begin(['id' => 'login-form','options' => [
'class'=> "form-photo"
]]); ?>
<?php
echo $form->field($model, 'photo')->widget(FileInput::classname(), [
'options' => ['accept' => 'image/*'],
'pluginOptions' => [
'uploadUrl' => Url::to(['/site/photo-upload']),
]
]);
?>
<?php ActiveForm::end(); ?>当我们在这个插件中选择文件并点击upload按钮时,它会发送ajax请求,我想检查服务器对此请求的响应是什么。
提前感谢!
发布于 2016-06-01 07:16:08
为按钮添加onclick处理程序。因为你正在使用一个框架,并且还没有发布你的前端代码,所以我不能告诉你如何选择你的目标按钮。
// remove default behavior
$(button).off("click");
$(button).click(function(e){
// prevent form from submitting
e.preventDefault();
// do stuff
// perform ajax
$.ajax({
url: /*add your target file here */,
type: 'post',
data: {
/* add your json object here */
},
success: function(data, status) {
data = JSON.parse(data);
}, error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}, complete: function(){
}
}); // end ajax call
});https://stackoverflow.com/questions/37557040
复制相似问题