有没有办法把'&'在搜索查询字符串到'+'或者使用多个文本框扩展查询
Is there a way to switch the '&' in a search query string to '+' or extend the query using multiple text boxes?
使用Craigslist的例子:
<form action="/search/sss" id="searchform" method="get">
<input id="query" name="query" value="car">
<select id="catAbb" name="catAbb">
<option value="sss">all for sale / wanted
</select>
<input type="radio" name="srchType" value="T">
<input type="radio" name="srchType" value="A" checked="checked">
<input name="minAsk" class="min" value="$1000">
<input name="maxAsk" class="max" value="$5000"> </td>
<input type="checkbox" name="hasPic" value="1">
<input type="submit" value="Search">
</form>
这个搜索字符串的结果:
newyork.craigslist.org/search/sss?query=car&srchType=A&minAsk=$1000&maxAsk=$5000
任何将& &'转换为'+'的方法,使url看起来像这样:
newyork.craigslist.org/search/sss?query=car+srchType=A+minAsk=$1000+maxAsk=$5000
最好的例子是Google的高级搜索:
google.com/search?q=car+"new+car"+honda+OR+toyota+OR+vw+-old+site:autotrader.com+$1000..$5000
换句话说,有没有办法像Google那样操作搜索表单,使用多个输入框来扩展查询,而不使用&号分隔每个输入?
希望我说的有意义
in javascript:
var string = "newyork.craigslist.org/search/sss?query=car&srchType=A&minAsk=$1000&maxAsk=$5000"
var部份= . replace(和 ;', '+');
//newstring = "newyork.craigslist.org/search/sss?query=car+srchType=A+minAsk=$1000+maxAsk=+5000"
我不知道你在说什么,但是可以肯定的是-正则表达式可以用来交换字符。在javascript中应该是这样的:
myUrl.replace(/'&/g,'+')
当你有
someurl?foo=1&bar=2
服务器环境中的会得到一个数组
foo => 1
bar => 2
google用
做什么googleurl?q=1+2+3
如果得到一个名为q的变量
q => 1+2+3
它们自己解析它。还有一些其他的选项,如mod重写,在我看来,给你更干净的url。
但是无论如何,这必须根据你的javascript生成,因为浏览器的表单默认行为不会这样工作。
作为对你最近评论的回应,在jQuery中,这看起来像
$('form').submit(function(event) {
event.preventDefault();
var query = '';
$(this).find('inpup, textarea, select').each(function() {
query += '+'+$(this).val();
});
query = escape(query.substr(1));
//debug
alert(query);
});
相关文章:
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- j查询utc offSets的时差
- 如何有效地将游戏数据存储在URL查询字符串中
- 如何处理node.js节点mongodb中的连接和查询队列
- 如何从 HTML 查询中删除项目
- 从查询字符串参数推断出正确的数据类型
- 如何删除除冒号、数字和'上午'或者'下午'
- 将curl查询转换为jQuery.ajax()
- 触发媒体查询断点时刷新页面
- 如何“;过滤器”;或者以其他方式重构该数据
- 使用DynamoDB查询返回
- 当查询不在displayField中时,引导Ajax Typeahead不显示结果
- Mongoose:布尔型'或者'使用通配符查询
- Mongoose findOne带有'或者'查询
- '或者'在sails.js中使用不同数据类型进行查询
- j查询下拉菜单.页面标记无法正常工作 - 或者我想要它的方式
- 有没有办法把'&'在搜索查询字符串到'+'或者使用多个文本框扩展查询
- couchdb一个带有LIKE AND EQUAL的查询,或者两个查询
- Ember数据's find方法:处理SQL'或者'等效查询
- Sequelize可以跟踪查询信息,或者像mongoose一样有setGlobalTraceFunction