如何使用jQuery通过ajax调用传递隐藏值?

时间:2012-02-23 14:37:32

标签: javascript jquery google-docs

我有一个使用谷歌文档的表单,当你提交它将转到googles默认的谢谢页面。我想要做的是使用ajax来发送数据,以便用户不会离开网站。 Google需要某些隐藏字段才能结束。如何在ajax中传递隐藏字段?以下是我写的代码。

                   $.ajax({
                        type: "post",
                        url: "https://spreadsheets.google.com/formResponse?formkey=HEREISWHEREMYKEYGOES",
                        data: "name=entry.1.group&value=24",
                        success: function() {
                            alert("yay")
                        },
                        error: function(e) {
                            console.log(e);
                        }
                    });

3 个答案:

答案 0 :(得分:2)

如果您想在javascript中向string添加字段,可以使用以下代码。确保将Whateverfield替换为实际字段,但我需要查看HTML以提供完整答案。

formKey = $('Whateverfield').val();
$.ajax({
    type: "post",
    url: "https://spreadsheets.google.com/formResponse",
    data: "name=entry.1.group&value=24&formkey=" + formKey,
    success: function() {
        alert("yay")
    },
    error: function(e) {
         console.log(e);
    }
});

理想情况下,您可以对数据使用类似的内容:

data: { 
   name: "entry.1.group",
   value: "24", 
   formKey: $('Whateverfield').val()
},

答案 1 :(得分:0)

您只需要通过数据参数传递其值,如下面的代码所示:

$.ajax({
                        type: "post",
                        url: "https://spreadsheets.google.com/formResponse?formkey=HEREISWHEREMYKEYGOES",
                        data:  { name="entry.1.group", value= "24", hidden1 = $('#hidden_id').val(), hidden2 = $('#hidden_id2').val() },
                        success: function() {
                            alert("yay")
                        },
                        error: function(e) {
                            console.log(e);
                        }
                    });

答案 2 :(得分:0)

只需传递data参数中的隐藏字段即可。例如

..
data: {
  ..
  hiddenField1: "hiddenValue1",
  hiddenField2: "hiddenValue2",
  ..
}