本文介绍了Drupal 7 FAPI - ajax图像预览的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用D7模块中的ajax来预览上传的图像,但不知道为什么它不起作用。这是我要做的: -
I am trying to preview the uploaded image using ajax in my D7 module but don't know why it's not working. Here is what I am trying to do:-
function create_ad_form($form, &$form_state)
{
$form['image_file'] = array(
'#title' => t('Upload Banner:'),
'#type' => 'file',
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Submit',
'#submit' => array('create_ad_form_submit'),
'#ajax'=> array(
'callback'=>'create_ad_form_submit',
'wrapper'=> 'im-area',
'method'=> 'replace',
'effect'=> 'fade',
)
);
$form['im-container']=array(
'#prefix'=>'<div id="im-area">',
'#suffix'=>'</div>',
);
}
function create_ad_form_submit($form, $form_state)
{
$file = file_save_upload('image_file', array(), "public://",$replace = FILE_EXISTS_REPLACE);
if ($file)
{
$file->status=FILE_STATUS_PERMANENT;
file_save($file);
$form['im-container']=array(
'#title'=>t('Preview:'),
'#prefix'=>'<div id="im-area">',
'#markup'=>'<img src="sites/default/files/'.$file->filename.'">',
'#suffix'=>'</div>',
);
}
else
drupal_set_message('No file uploaded.');
return $form['im-container'];
}
上述代码没有出现错误,但图像预览不显示。任何人都可以告诉我在这里做错什么,我该怎么办?谢谢。
The above code gives no error but the image preview doesn't show up. Can anybody tell what I am doing wrong here and what should I do??? Thanks.
推荐答案
确定。我得到它的工作我已经更新了上面的代码,它为我工作。刚刚禁用并重新启用该模块,并且相同的代码开始工作。它的奇怪,但它是,不知道是什么问题。
OK. I got it working. I've updated the code above, its working for me. Just disabled and re-enabled the module and the same code started working. Its strange but it is, don't know what is the problem.
这篇关于Drupal 7 FAPI - ajax图像预览的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!