jQuery - 将查询字符串值传递给$(selector).load(url);不工作

时间:2010-10-08 02:44:25

标签: jquery

我有以下几行代码:

var search = $("#txtSearch").val();
search.replace(" ", "%20");
$(".header").html("/Parts/Search.php?type=" + $("input[name=type]:checked").val() + "&q=" + search);
$(".main-content").load("/Parts/Search.php?type=" + $("input[name=type]:checked").val() + "&q=" + search);

我知道有一个文本框,其中第一行指定了id,两个输入类型为radio,名称设置为type。为类型传递的值是邮政编码或正常。正确的输出(据我所知)正在满足.header选择器的任何元素中显示。但是页面未加载到.main-content中。还有一个名为Search.php的页面,如果JS被禁用,用户将被带到该页面(即有一个通过GET方法提交给/Search.php的提交按钮 - 如果启用了JS则会消失并显示搜索链接)。如果此页面指定了两个查询字符串参数,那么它将包含/Parts/Search.php。这很好 - 它从父(根级别)Search.php读取查询字符串。我不明白为什么它不能使用jQuery。有没有人有任何想法?

提前致谢,

理查德

PS我还尝试在URL的末尾附加搜索框的值,而不是将其存储在变量中,然后替换空格......这也不起作用。

1 个答案:

答案 0 :(得分:2)

第2行看起来很可疑。 replace返回一个值。试试这个。

search = search.replace(" ", "%20");