2016-04-27 63 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

相关问题