我已经写了以下ajax调用,但只发送了q和email参数,我已经尝试替换消息,因为我认为它可能是一个关键词,但仍然无法正常工作。我现在迷失了想法。
$.ajax({
type: 'POST',
url: '/ajax/functions.php',
data: {
q: 'need_help',
email: $('input[name=email]').val(),
message: $('input[name=message]').val()
}
}).done(function(response) {
console.log(response);
});
非常感谢任何帮助。
表格代码:
<div class='form-group col-sm-offset-3 col-sm-6'>
<input class='form-control' type='email' name='email' placeholder='Your email'>
</div>
<div class='form-group col-sm-offset-3 col-sm-6'>
<textarea class='form-control' name='message' placeholder='What is your problem?'></textarea>
</div>
<div class='form-group col-sm-offset-3 col-sm-6'>
<input id='button_submit' type='submit' class='btn btn-primary form-control' value='Send' name='need_help' data-loading-text='Sending...'>
</div>
在您说它不在表单中之前,ajax调用是在提交按钮上的onClick中发出的,此时我只有ajax的空白文件,但我可以看到错误开发者网络标签。
答案 0 :(得分:2)
您需要更改:
message: $('input[name=message]').val()
到
message: $('textarea[name="message"]').val()
答案 1 :(得分:1)
你的选择器错误了:
message: $('input[name=message]').val()
^^^^^---input field
<textarea class='form-control' name='message' placeholder='What is your problem?'>
^^^^^^^^---but it's actually a textarea
请尝试$('textarea[name=message]')
。
答案 2 :(得分:0)
消息是一个textarea,而不是输入,尝试改变它,看看它现在是否显示。
message: $('textarea[name=message]').val()