通过 Ajax 将 Textarea 字段传递给 php
Posted
技术标签:
【中文标题】通过 Ajax 将 Textarea 字段传递给 php【英文标题】:Passing Textarea field through Ajax to php 【发布时间】:2014-02-02 08:58:22 【问题描述】:我正在通过 Ajax 发送联系表单,所有值都可以正常发送和处理,但由于某种原因,消息内容没有从 textarea 字段传递,我尝试过 var note = $("textarea#note").text();
和 var note = $("textarea#note").val();
我也试过尝试了$("$note")
,但仍然无济于事。我确定文本区域的值正在被拾取,但它只是没有传入字符串。
这是我的代码:
$('#formsend').click(function()
var detail = $("input#subject").val();
var note = $("textarea#note").text();
var dataString = $('form').serialize();
$.ajax(
type: "POST",
url: "processmail.php",
data: dataString,
success: function()
$('#form').html("<div id='message'></div>");
$('#message').html("<h2>Message Submitted.</h2>")
.append("<p>Thank you for contacting me, I will be in touch soon.</p>")
.hide()
.fadeIn(1500);
);
return false;
); //end form ajax
但我尝试将数据传递为:
data:
'detail': detail
'note': note
这两种方法似乎都适用于所有字段,但它们不会将文本区域的值传递给我的 php 文件。
有什么想法吗?
【问题讨论】:
简单地使用$("#note").val()
- 如果你有像<textarea id="note">..</textarea>
这样的文本区域,这应该可以工作
【参考方案1】:
试试这个,你可以通过这个$("$note")
获取内容,你应该使用$("#note")
$('#formsend').click(function()
var detail = $("input#subject").val();
var note = $("#note").text();
var dataString = $('form').serialize();
$.ajax(
type: "POST",
url: "processmail.php",
data: dataString,
success: function()
$('#form').html("<div id='message'></div>");
$('#message').html("<h2>Message Submitted.</h2>")
.append("<p>Thank you for contacting me, I will be in touch soon.</p>")
.hide()
.fadeIn(1500);
);
return false;
);
【讨论】:
【参考方案2】:只需使用 $("#note").val() - 如果您有 id 为 note
的 textarea,这应该可以工作
<textarea id="note">..</textarea>
js:
$('#formsend').click(function()
var detail = $("input#subject").val();
var note = $("#note").val();
$.ajax(
type: "POST",
url: "processmail.php",
data: detail: detail, note: note,
success: function()
$('#form').html("<div id='message'></div>");
$('#message').html("<h2>Message Submitted.</h2>")
.append("<p>Thank you for contacting me, I will be in touch soon.</p>")
.hide()
.fadeIn(1500);
);
return false;
);
【讨论】:
以上是关于通过 Ajax 将 Textarea 字段传递给 php的主要内容,如果未能解决你的问题,请参考以下文章
来自ckeditor textarea的ajax表单提交值之后没有通过邮件发送