代码之家  ›  专栏  ›  技术社区  ›  sberry

jQuery:Javascript中从ajax请求获取请求(Get/POST)参数

  •  0
  • sberry  · 技术社区  · 14 年前

    我正在使用 jQueryUI dialog

    http://mydomain.com/page1_with_form?affiliate=Chuck%20Norris

    http://mydomain.com/page2_with_form?affiliate=Chuck%20Berry

    jQuery plugin

    这两个页面(page1_with_form和page2_with_form)在对话框中加载相同的模式表单my_affiliate_form.html。我在my_affiliate_form.html页面上这样做没有问题

    var affiliate_code = $.query.get('affiliate');
    if (!affiliate_code) affiliate_code = "None";
    $('[name=hidden_affiliate_field]').val(affiliate_code);
    

    这真是太棒了,我的下属是查克·诺里斯和查克·贝瑞。

    现在的问题是,我不仅希望包含查询字符串中的附属代码,还希望使用代表他们加载表单的页面的键,即page1_with_form和page2_with_form)。对于page1,密钥可能是“Public”,而对于page2,密钥可能是“Private”,或者类似的东西。

    现在我想要它,当我点击这个页面时,我的隐藏字段的值为“Public Chuck Norris” http://mydomain.com/page1_with_form?affiliate=Chuck%20Norris 和“二等兵Chuck Norris”点击此页面时 http://mydomain.com/page2_with_form?affiliate=Chuck%20Norris

    我正在加载对话框内容,如下所示:

    $('#modal-form-holder').dialog({
              bgiframe:true,
              width:width,
              title: title,
              modal:true,
              resizable: false,
              closeOnEscape: true,
              draggable: false,
              autoOpen:false
     }).load("my_affiliate_form.html?affiliate_key=" + key, null, onComplete);
    

    很抱歉这么冗长,我只想把我的问题说得尽可能清楚。

    1 回复  |  直到 14 年前
        1
  •  0
  •   Matthew Flaschen    14 年前

    在onComplete处理程序中设置值。比如:

    $('#modal-form-holder').dialog({
              bgiframe:true,
              width:width,
              title: title,
              modal:true,
              resizable: false,
              closeOnEscape: true,
              draggable: false,
              autoOpen:false
     }).load("my_affiliate_form.html", null, function(responseText, textStatus, XMLHttpRequest)
    {
      onComplete(responseText, textStatus, XMLHttpRequest, key);
    });
    

    然后,在onComplete(应该定义为包含所有四个参数)中,用key填充affiliate_key字段。