Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Получить get переменную и добавить её в другой ссылке (https://javascript.ru/forum/misc/39969-poluchit-get-peremennuyu-i-dobavit-ejo-v-drugojj-ssylke.html)

greencard 19.07.2013 12:20

Получить get переменную и добавить её в другой ссылке
 
Здравствуйте.
Вопрос возможно из простых, но я новичок в js, так что не судите строго.

есть код динамической таблицы на JQUERY
jQuery(document).ready(function(){
        var lastSel;
        jQuery("#list").jqGrid({
            url:'getdata.php,
            datatype: 'json',
            mtype: 'POST',


подскажите, как мне взять GET переменную которая передается на эту страницу при переходе и добавить её в поле url тоже как get?

P.s. или передать туда POST.

animhotep 19.07.2013 12:34

а через похапе не пробовали?
jQuery(document).ready(function(){
        var lastSel;
        jQuery("#list").jqGrid({
            url:'getdata.php?<?php echo $_GET["var"]; ?>',
            datatype: 'json',
            mtype: 'POST',

greencard 19.07.2013 12:55

я пробоавал так

url:'getdata.php?var=<?php echo $_GET["var"]; ?>',


но не помогло

animhotep 19.07.2013 13:32

всмысле, <?php echo $_GET["var"]; ?> не вывело того что нужно?

devote 19.07.2013 13:40

Цитата:

Сообщение от animhotep
всмысле, <?php echo $_GET["var"]; ?> не вывело того что нужно?

дык у него файл то наверное с расширением .js а в нем PHP не высматривает свой код.

mta88 19.07.2013 13:49

Цитата:

Сообщение от greencard (Сообщение 263087)
url: 'getdata.php?var=<?php echo $_GET["var"]; ?>'

вам что, xss-инъекции не страшны чтоли?

в любом случае, все параметры находятся в "window.location.search", но стандартного api для его парсинга нет, придется использовать библиотеку
http://medialize.github.io/URI.js/ -- вроде мощная и универсальная, но тяжелая

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

должна сойти если нет необычных знаков в строке поиска

animhotep 19.07.2013 14:21

Цитата:

Сообщение от mta88
вам что, xss-инъекции не страшны чтоли?

интересно увидеть пример урла который в данном случае выполнит произвольный js

mta88 19.07.2013 14:25

Цитата:

Сообщение от animhotep (Сообщение 263109)
интересно увидеть пример урла который в данном случае выполнит произвольный js

щас соображу что-нибудь

ruslan_mart 19.07.2013 14:31

Цитата:

Сообщение от animhotep
интересно увидеть пример урла который в данном случае выполнит произвольный js

//http://site.com/?var=1;alert(123);alert(456)

var myVar = <?=$_GET['var']?>


greencard, записывайте на самой странице Вашу GET переменную и потом подставляйте её внутри файла js.

home.php:
<script type="text/javascript">
var getVar = '<?=htmlspecialchars($_GET['var'])?>';
</script>


А в сам файл js:
$(function(){
        var lastSel;
        jQuery("#list").jqGrid({
            url: 'getdata.php?var='+getVar,
            datatype: 'json',
            mtype: 'POST',
            ...

animhotep 19.07.2013 14:54

Цитата:

Сообщение от Ruslan_xDD
//http://site.com/?var=1;alert(123);alert(456)

ичё?

url:'getdata.php?var=1;alert(123);alert(456)';


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