0

を使用してURLを介してパラメータを渡そうとしていますsetParams({id:id,model:mod})が、ブラウザのアドレスバーにが表示されますlocalhost/MVC/query?id=1&model=member。成功です。

しかし、URLバーで次のようなパラメータを渡したいと思いますlocalhost/MVC/query?fq=model: member+model:new_member。「Solr」検索サーバーを統合しようとしています。これは、クエリのフィルタリングをサポートする構文です。

助けていただければ幸いです。

4

1 に答える 1

0

見てくださいButton#getHref()

getHref: function() {
    var me = this,
        params = Ext.apply({}, me.baseParams);
    params = Ext.apply(params, me.params);
    return me.href ? Ext.urlAppend(me.href, Ext.Object.toQueryString(params)) : false;
},

toQueryString()

toQueryString: function(object, recursive) {
    ...
    for (j = 0, ln = paramObjects.length; j < ln; j++) {
        ...
        params.push(encodeURIComponent(paramObject.name) + '=' + encodeURIComponent(String(value)));
    }
    return params.join('&');
},

したがって、=の代わりに、およびの代わりに使用するtoQueryStringことを想定して、の新しいバージョンを作成する必要があると思います。最後に、ボタンのtouse関数をオーバーライドします。返品は次のようになります。toSolrQueryString:+&getHref()toSolrQueryString

return me.href ? Ext.urlAppend(me.href, 'fq=' + toSolrQueryString(params)) : false;
于 2012-05-11T08:52:32.113 に答える