gpt4 book ai didi

jquery - 如何将 AJAX 变量从 jQuery 传递到他们的 Controller ?

转载 作者:数据小太阳 更新时间:2023-10-29 07:12:27 24 4
gpt4 key购买 nike

我有一个电子邮件表格。但是我正在制作一个测试电子邮件表单,用户可以在其中添加一个唯一的电子邮件,并让电子邮件测试将其发送到该特定电子邮件。

为了简单起见,我决定让测试电子邮件通过 ajax 执行,并将整个内容粘贴到另一个电子邮件表单中。

我不知道如何将变量从我的 HAML 发送到我的 Controller

new.html.haml

- form_tag admin_email_blast_path do
Subject
%br
= text_field_tag 'subject', :class => "mass_email_subject"
%br
Body
%br
= text_area_tag 'message', '', :name => 'editor1', :class => "mass_email_body"
%br/
= submit_tag 'Send Email', :class => 'button'

.grid_3.right.align_right.suffix_1 # <= TEST EMAIL :D
= text_field_tag 'email', nil, :style => "width: 150px;", :class => "test_email_address"
= link_to 'Test Email', test_email_admin_email_blast_path, :class => 'button test_email'

JS

$(".test_email").live("click", function() {

var email = $(".test_email_address")
var subject = $(".mass_email_subject");
var body = $(".mass_email_body");

data = "email=" + email.val() + "&subject" + subject.val() + "&body" + body.val();

$.ajax({type: "GET",
url: $(this).attr("href"),
dataType: "script"
data: data
});
return false;
});

Controller

def test_email
debugger
email = params[:email]
subject = params[:subject]
body = params[:body]
Notifier.deliver_email_blast(email, subject, body)
end

routes.rb

admin.resource :email_blast, :member => {
:test_email => :get
}

如果这是一个愚蠢的新手问题,我提前道歉。 :(

最佳答案

您可以使用data 参数:

$('.test_email').live('click', function() {

var subject = $('.mass_email_subject');
var body = $('.mass_email_body');

$.ajax({
type: 'GET',
url: this.href,
dataType: 'script',
data: { subject: subject.val(), body: body.val() }
});
return false;
});

关于jquery - 如何将 AJAX 变量从 jQuery 传递到他们的 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3719864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com