2012-10-22 46 views
1

我想在我的D7模塊中使用ajax預覽上傳的圖像,但不知道爲什麼它不起作用。這是我想要做的: -Drupal 7 FAPI - 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']; 
} 

上述代碼沒有提供任何錯誤,但圖像預覽不顯示。有人可以告訴我在這裏做錯了什麼,我該怎麼辦?謝謝。

+1

什麼是錯誤信息?! –

+0

沒有錯誤信息。 –

回答

2

好的。我得到了它的工作。我已經更新了上面的代碼,它爲我工作。只需禁用並重新啓用該模塊,並開始工作相同的代碼。它奇怪,但它是,不知道是什麼問題。