【问题标题】:Drupal 7 FAPI - ajax image previewDrupal 7 FAPI - ajax 图像预览
【发布时间】:2012-10-22 12:30:51
【问题描述】:

我正在尝试在我的 D7 模块中使用 ajax 预览上传的图像,但不知道为什么它不起作用。这是我想要做的:-

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'];
}

上面的代码没有给出错误,但是图像预览没有显示出来。谁能告诉我在这里做错了什么,我该怎么办???谢谢。

【问题讨论】:

    标签: php drupal-7 drupal-fapi drupal-forms drupal-ajax


    【解决方案1】:

    好的。我让它工作了。我已经更新了上面的代码,它对我有用。刚刚禁用并重新启用模块,相同的代码开始工作。很奇怪,但不知道是什么问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-15
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-08
      相关资源
      最近更新 更多