【发布时间】:2011-06-28 00:13:20
【问题描述】:
我想要的是一个 JQuery/JavaScript 代码,它会自动将一些数据从 facebook 传递到表单(基本上不需要显示表单)。所以第一部分已经准备好了(从 facebook 中提取数据的部分)。
window.fbAsyncInit = function() {
FB.init({appId: 'xxxxxxxxxxxxxxx', status: true, cookie: true, xfbml: true});
};
FB.Event.subscribe('auth.login', function(response) {
if (response.session) {
FB.api({
method: "fql.query",
query: "SELECT name,email FROM user WHERE uid = " + response.session.uid
}
现在我需要将姓名和电子邮件插入到带有 name="name" 和 name="email" 的输入中并自动提交表单。
提前致谢!
编辑:这里是表格:
<form method="post" class="af-form-wrapper" action="http://www.aweber.com/scripts/addlead.pl" >
<input type="hidden" name="meta_web_form_id" value="XXXXXXXX" />
<input type="hidden" name="listname" value="XXXXXX" />
<input type="hidden" name="meta_adtracking" value="XXXX" />
<input type="hidden" name="meta_message" value="1" />
<input id="awf_field-22176678" type="text" name="name" class="text" value="" tabindex="500" />
<input class="text" id="awf_field-22176679" type="text" name="email" value="" tabindex="501" />
<input name="submit" class="submit" type="submit" value="Submit" tabindex="502" />
<div class="af-clear">
</form>
编辑 2:我需要做这样的事情,只是用 jQuery 简化:
<?php
$formcode = '<form method="post" action="http://www.aweber.com/scripts/addlead.pl" >
<input type="hidden" name="meta_web_form_id" value="864136470" />
<input type="hidden" name="listname" value="fbu-ppv-mmoney1" />
<input type="hidden" name="meta_adtracking" value="FB_Ultralizer_PPV" />
<input type="hidden" name="meta_message" value="1" />
<input id="awf_field-22176678" type="text" name="name" class="text" value="" tabindex="500" />
<input class="text" id="awf_field-22176679" type="text" name="email" value="" tabindex="501" />
<input name="submit" class="submit" type="submit" value="Submit" tabindex="502" />
</form>
'; ?>
<script type="text/javascript">
customar_formcode="$formcode";
customar_formcode=customar_formcode.replace("{email}", user.email);
customar_formcode=customar_formcode.replace("{name}", user.name);
document.getElementById(\'form\').submit();
</script>
【问题讨论】:
-
您是在尝试填写 DOM 中已经存在的表单然后提交,还是尝试在不向用户实际呈现任何表单的情况下对某个 url 进行 POST?跨度>
-
好吧,也许将 DOM 作为 PHP 变量,然后以某种方式解析它?我真的不想制作隐藏的 DIV 之类的东西。
-
这取决于您需要做什么,下面的答案是发送帖子的正确方法。如果您想实际将用户重定向到该页面,并显示其响应等,例如模拟用户填写表单并点击“提交”的实际动作,最简单的方法基本上是在 DOM 中创建一个表单,填写并提交。您可以动态构建它,但只有隐藏表单并没有什么问题。
标签: javascript jquery facebook