2010-04-13 2 views
1

Как мы можем собрать значение строки запроса в javascript. мой сценарий похож на следующий http://192.168.10.5/study/gs.js?id=200 здесь я хочу собрать значение id в файле сценария gs.js. Для этого я используюСтрока запроса в Javascript

function getQuerystring(key, default_) 
{ 
    if (default_==null) default_=""; 
    key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regex = new RegExp("[\\?&]"+key+"=([^&#]*)"); 
    var qs = regex.exec(window.location.href); 
    if(qs == null) 
    return default_; 
    else 
    return qs[1]; 
} 
var string_value = getQuerystring('id'); 
alert(string_value); 

Но это не getting..Please кто-нибудь может исправить me.please

ответ

1

С моей programming archive:

function querystring(key) { 
    var re = new RegExp('(?:\\?|&)'+key+'=(.*?)(?=&|$)','gi'); 
    var r = [], m; 
    while ((m = re.exec(document.location.search)) != null) r[r.length] = m[1]; 
    return r; 
} 

Функция возвращает найденные значения в качестве массив с нулем или более строк.

Использование:

var values = querystring('id'); 
if (values.length > 0) { 
    // use values[0] to get the first (and usually only) value 
    // or loop through values[0] to values[values.length-1] 
} 

или:

var string_value = querystring('id').toString(); 
1

Эта функция получает строку запроса страницы хостинга этот сценарий: он опирается на window.location.href. Кажется, что http://192.168.10.5/study/gs.js?id=200 - это адрес самого скрипта, а не страницы. Для этого вам нужно будет сначала получить этот адрес, просмотрев теги script в своем документе, а затем слегка измените предыдущую функцию, чтобы взять дополнительный параметр, представляющий URL-адрес, и не полагаться на window.location.href.

+0

Или - на стороне сервера введите 'var myid = 200;' в код javascript, который он служит для 'gs.js? Id = 200' – gnarf