我有一个Wufoo表单,我想用一个直接来自查询字符串的值填充其中一个字段
alt text http://www.balexandre.com/temp/2010-07-26_2057.png
正常的jQuery调用不会返回任何内容
jQuery("#Field13")
所以,所有使用这个的设置,只是没有完成
jQuery("#Field13").val( my_qs_value );
alt text http://cl.ly/1n5W/content
我使用的是来自Wufoo(不是iframe)的嵌入Javascript代码,还有免费帐户,我也使用jQuery,而不是美元符号来调用jQuery方法。
我能试一下吗?或者有一个默认设置可以放置它吗?
编辑
从Chris answer我得到了一切工作,在Wufoo javascript代码中我添加了
defaultValues
参数,该参数将调用返回所需信息的方法。'defaultValues':'Field13=' + getQuerystring('pname',''),
我从Blogging Developer站点获取的getQuerystring方法:
function getQuerystring(key, default_)
{
if (default_==null) default_="";
key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
var qs = regex.exec(window.location.href);
if(qs == null)
return default_;
else
return qs[1];
}
我们无法访问Wufoo iFrame,因为它是Wufoo域,所有尝试都将以跨域错误调用结束。这是最好的解决方案,也是最好的方法。
最佳答案
请参阅我们关于在Wufoo表单前添加URL修改的文档:
http://wufoo.com/docs/url-modifications/
基本上,在JavaScript嵌入代码中,可以向prefill字段传递一个附加参数:
“默认值”:“field5=wufoo&field6=today”
在您的例子中,您可能需要使用任何服务器端技术将它们从URL中拉出,然后使用该数据流行JavaScript参数。
jQuery无法获取内部字段的原因是表单位于iFrame中(即使使用JavaScript嵌入方法),JavaScript不能像这样查看iFrame内部。另外,屏幕截图中还有jQuery(“Field13”),如果表单实际上在同一页上,则它必须是jQuery(“Field13”),如上面的文本所示。