经过一段时间的失败,我发现我不能在jquery的post方法中使用连字符的参数名称,如下所示:
$.post("/test",
{
subject: $('#subject').val(),
email: $('#email').val(),
message: $('#message').val(),
g-recaptcha-response = $('#g-recaptcha-response').val()
}
"g-recaptcha-response"与Google Recaptcha有关,因此命名不在我手中。在这种情况下,有什么方法可以发送带连字符的参数吗?
尽管还有其他方法可以解决此限制,例如提交表单,但我很好奇是否可以以这种方式发送。
这与
jQuery无关。它是javascript。
因此,请改用'g-recaptcha-response'
:
$.post("/test", {
subject: $('#subject').val(),
email: $('#email').val(),
message: $('#message').val(),
'g-recaptcha-response': $('#g-recaptcha-response').val()
}
另请注意,它应该与这样的:
一起使用:
'g-recaptcha-response': $('#g-recaptcha-response').val()
而不是像代码段中那样使用=
:
'g-recaptcha-response' = $('#g-recaptcha-response').val()