2016-04-27 66 views
1

當我選擇他的名字時,如果他的電子郵件ID存在於數據庫中,我需要一個員工電子郵件ID。任何人都可以告訴我該怎麼做,因爲我有1400名員工和他們的郵件ID,我在下拉列表中獲得他們的名字,但是當我選擇他們的名字時,我需要他們的郵件ID在特定字段中顯示.... ..如何在我們選擇人名時獲取電子郵件

$("#user_employee_id").change(function(){ 
     $.ajax({ 
       type: "GET", 
       url: "/User/emailcheck", 
       data: { email: user.email } 
       }); 

     }); 

user_controller.rb 
def emailcheck 
    @user = User.search(params[:email]) 
    end 

user.rb 
def self.search(email) 
     if email 
      where('email = ?',email).first 
     end 
    end 

任何人都可以告訴如何獲得電子郵件ID,當我點擊員工姓名?我需要在電子郵件標籤中默認獲得該員工的電子郵件ID。

+0

請給出一個確切的信息WRE我能做到這一點,因爲即時通訊新的紅寶石......我想知道WRE我錯了,我知道我的方法是錯誤的 – Pasha

回答

1

試試這個:

$("#user_employee_id").change(function(){ 
    var id = $(this).val(); 
    $.ajax({ 
      type: "GET", 
      url: "/User/emailcheck", 
      data: { id : id} 
      success : function(data) { 
      $("#user_email").val(data); 
      }, 
      error : function(err) { 

      } 
     }); 

    }); 

user_controller.rb

def emailcheck 
    @user = User.find_by_id(params[:id]) 
    respond_to do |format| 
    if @user.email.present? 
     format.json { render json: @user.email , status: :ok } 
    else 
    format.json { render json: "No mail id", status: :unprocessable_entity } 
    end 
    end 
end 
+0

甚至與gaurav代碼相同的問題 – Pasha

1

你可以做到這一點像

Chenge你的JS代碼,如:

$("#user_employee_id").change(function(){ 
    var user_id = $(this).val(); #considering that your are setting id as a value of select field 
    $.ajax({ 
    type: "GET", 
    url: "/user/emailcheck", 
    data: { id: user_id } 
}).success(function(res){ 
    $("#your_text_field_id").val(res.text); 
}); 

});

,並在您user_controller.rb

def emailcheck 
    user = User.find_by(id: params[:id]) 
    if user.present? 
     render text: user.email 
    end 
end 
+0

@pratal謝謝你回答我的問題,即時通訊抱歉說我還沒有得到電子郵件ID,以前我是如何只有和路線我已經得到像這樣的資源:用戶,只:[ :index,:show,:update,:edit] do collection do get'create_new' get'emailcheck' end – Pasha

+0

same iss我即將面臨的烏爾代碼 – Pasha

+0

答案都是正確的 – Pasha

相關問題