2012-10-22 4 views
1

내 D7 모듈에서 ajax를 사용하여 업로드 된 이미지를 미리 보려고하는데 왜 작동하지 않는지 모릅니다. 여기에 내가 뭘하려고 오전입니다 : -Drupal 7 FAPI - 아약스 이미지 미리보기

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

확인. 나는 그것을 작동 시켰어. 위 코드를 업데이트했습니다. 모듈을 비활성화하고 다시 활성화하면 동일한 코드가 작동하기 시작했습니다. 그것의 이상하지만 그것은 문제가 무엇인지 모른다.