Как настроить ввод Wufoo с помощью значения строки запроса? - PullRequest
2 голосов
/ 26 июля 2010

У меня есть форма Wufoo, которую я хотел заполнить одним из полей значением непосредственно из строки запроса

alt text http://www.balexandre.com/temp/2010-07-26_2057.png

нормальный вызов jQuery для этого неполучить что-нибудь обратно

jQuery("#Field13")

так что все настроено с помощью этого, просто не достигнуто

jQuery("#Field13").val( my_qs_value );

альтернативный текст http://cl.ly/1n5W/content

Я использую Вставьте Javascript код из Wufoo (не iframe) и бесплатный аккаунт , я также использую jQuery , а не знак доллара для вызова методов jQuery.

Есть идеи, что я могу попробовать?Или есть установка, которая может разместить это по умолчанию?


Отредактировано

От ответа Криса я получил все для работы, в коде JavaScript Wufoo, который я добавилпараметр defaultValues, который будет вызывать метод, возвращающий нужную мне информацию.

'defaultValues':'Field13=' + getQuerystring('pname',''),

и метод getQuerystring, полученный из Blogging Developer site:

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 сделать это.

1 Ответ

5 голосов
/ 27 июля 2010

Ознакомьтесь с нашей документацией об изменениях URL-адресов для предварительного заполнения форм Wufoo: http://wufoo.com/docs/url-modifications/

В основном, в коде JavaScript для вставки, вы можете передать дополнительный параметр в поля предварительного заполнения: 'defaultValues': 'field5 = wufoo & field6 =today '

Похоже, в вашем случае вам нужно будет извлечь их из URL, используя любую серверную технологию, которую вы используете для обслуживания страницы, а затем использовать параметры JavaScript с этими данными.

Причина, по которой jQuery не может получить доступ к внутренним полям, заключается в том, что форма находится внутри iFrame (даже с методом встраивания JavaScript), и JavaScript не может заглядывать внутрь таких фреймов.Кроме того, на снимке экрана показан jQuery ("Field13"), который должен быть jQuery ("# ​​Field13"), как в предыдущем тексте, если форма была на той же странице.

...