Javascript-форум (https://javascript.ru/forum/)
-   Мобильный JavaScript (https://javascript.ru/forum/mobile/)
-   -   помогите в window.location.href (https://javascript.ru/forum/mobile/40606-pomogite-v-window-location-href.html)

ongdash 12.08.2013 17:36

помогите в window.location.href
 
как сделать так site.ru/page.html?who=lamer
и в странице выводилась: Привет lamer
Привет '+who+' ??

mta88 12.08.2013 19:07

stackoverflow.com/questions/901115/how-can-i-get-query-string-values

ongdash 12.08.2013 22:35

Цитата:

Сообщение от mta88 (Сообщение 267166)

не понял, объясни подробнее

moskitos80 13.08.2013 02:10

Вот набросал тебе код:
<!doctype html>
<html>
<head>
    <title>;)</title>
    <meta charset="utf-8">
    <style type="text/css"></style>	
</head>
<body>
   
    <script>
    (function (G) {
        
        // G.location.search - вернет строку в начале которой будет "?"
        // substring(1) - избавит нас от него.
        var query = G.location.search.substring(1),
        
            /**
             * Получить объект, содержащий GET - переменные.
             * Например, при адресе страницы: http://xxx.xx/xxx.html?alpha=1&betha=2
             * вернет объект: {alpha:"1", betha:"2"} (все значения строки!)
             * @param {String} queryString - строка запроса
             * @return {Object}
             */
            getQuery = function (queryString) {
                if (queryString.length < 1) {
                    return {};
                }
                var arrQuery    = queryString.split("&"),
                    arrQueryLen = arrQuery.length,
                    result      = {}, 
                    current     = [], 
                    i;            
                for (i = 0; i < arrQueryLen; i += 1) {
                    current = arrQuery[i].split("=");
                    result[current[0]] = current[1];
                }
                return result;
            };        
        // Вызываем. 
        // В вызове мы обрабатываем ситуацию, когда переменной
        // who - может и не быть в запросе - тогда мы подставим в строку 
        // слово "гость".
        G.document.write( 
            "Привет " + ( getQuery(query).who || " гость") 
        );        
    } (this));
    </script>
</body>
</html>

mta88 13.08.2013 08:02

Цитата:

Сообщение от ongdash (Сообщение 267214)
не понял, объясни подробнее

ну типа по ссылке в первом ответе функция, которая найдет значение "who"
а вывести его на страницу можно десятком способов, вам лучше знать каким
или вы ни одним не можете?

ongdash 13.08.2013 20:43

Цитата:

Сообщение от mta88 (Сообщение 267248)
ну типа по ссылке в первом ответе функция, которая найдет значение "who"
а вывести его на страницу можно десятком способов, вам лучше знать каким
или вы ни одним не можете?

Угу не могу я нуб :(

ongdash 13.08.2013 21:11

огромное спасибо. У меня ещё вопрос: на адресной сделать так blabla.ru/download.html?i=10
а на странице такой код
<html><head>
<meta http-equiv='Refresh' content='2;>
<script type="text/javascript" src="bd.js"></script>
<script type="text/javascript" >
document.write('url='+linknames[i]+'');
}
</script>
</head></html>

Ну собственно bd.js
var linknames = [
'ne vidni',
'/game/uff.jar',
'/game/alkg.jar',
'/game/ahgh.jar',
'/game/podh.jar',
'/game/ylss.jar',
'/game/fssh.jar',
'/game/qzass.jar',
'/game/zwss.jar',
'/game/ssss.jar',
'/game/afss.jar'
];

mta88 13.08.2013 21:19

Цитата:

Угу не могу я нуб :(
ну так идите книжку читайте :)
в ней много интересного написано часто

попробуйте для начала что-нибудь такое вставить где-нибудь между <head> и </head>
<script>
window.onload = function() {
  function getParameterByName(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
  }

  alert('Привет '+getParameterByName('who'));
}
</script>


Часовой пояс GMT +3, время: 12:04.