3

現在、アドレスバーにこの URL があります

http://localhost/cp/subscribed&type=topics

クリックsearch-button-cpすると追加されるはずです&search=$term

$(".search-button-cp").live("click", function() {
  var url = $(this).parents(".search-container:first").attr("data-url");
  var search =  $(this).parents(".search-container:first").find(".search-input-cp").val();
  window.location.href = url + "&search=" + search;
}); 

代わりに、このURLを取得します

http://localhost/cp/localhost/cp/subscribed&type=topics&search=car

alert(url)と私はlocalhost/cp/subscribed&type=topics...それで何が問題なのですか?

このURLにリダイレクトする必要がありますlocalhost/cp/subscribed&type=topics&search=car

これを解決するにはどうすればよいですか?

これが犯人である場合の私のmodの書き直しです

RewriteRule ^cp/([A-Za-z0-9-]+)?(/[A-Za-z0-9-]+)?(/[A-Za-z0-9-]+)?([^.]+)?/?$ /cp.php?o=$1&id=$2&p=$3&query=$4 [L]
4

2 に答える 2

3

http://var の前に配置urlするwindow.location.hrefか、パスを相対にする必要があります。

これで、スクリプトが「考える」のlocalhost/cp/subscribed&type=topicsは相対パスであり( がないためhttp(s)://)、基本パスhttp://localhost/cp/window.location.href.

于 2013-07-09T13:14:29.320 に答える
0

代わりにこの関数を試してください:

function ChangeUrl() {
     var currentUrl = window.location.href;
     var stringToNavigate = "";
     if (currentUrl.indexOf("search") !== -1)
        {
            var stringToReplace = currentUrl.substring(currentUrl.indexOf("search"), currentUrl.length);
            if (stringToReplace.indexOf("&") !== -1)
            {
                stringToReplace = stringToReplace.substring(0, stringToReplace.indexOf("&"));
            }
            stringToNavigate = currentUrl.replace(stringToReplace, "search=" + document.getElementById('yourTextBoxId').value);                  
        }
     else
        {
            stringToNavigate = currentUrl + "&search=" + document.getElementById('yourTextBoxId').value;
        }
     window.location.href = stringToNavigate;
}
于 2013-07-09T13:18:16.570 に答える