2012-05-18 2 views
-3

Мне нужно вызвать функцию javascript и передать длинный URL-адрес. который дает неопределенную ошибку из-за некоторых специальных символов. Я не могу использовать escape-символы, потому что URL-адрес выбирается динамически и передается функции. Как я могу это сделать?Как передать URL-адрес в качестве параметра в функции javascript?

+3

Пожалуйста, ваш код. – marteljn

ответ

2

См. Это thread. Не обязательно, если URL-адрес генерируется во время выполнения. Вы можете вызвать функцию для ее кодирования перед передачей ее другой функции?

0

Мне нужно было прочитать переменную GET URL и выполнить действие, основанное на параметре url. Я искал высоко и низко для решения и наткнулся на этот маленький кусок кода на Snipplr. Он в основном читает текущий URL-адрес страницы, выполняет некоторое регулярное выражение по URL-адресу, а затем сохраняет параметры URL-адреса в ассоциативном массиве, к которому мы можем легко получить доступ. Так что, если бы у нас был следующий URL-адрес с javascript внизу.

http://papermashup.com/index.php?id=123&page=home

Все, что мы должны были бы сделать, чтобы получить параметры и идентификатор страницы должны назвать это:

var first = getUrlVars()["id"]; 
var second = getUrlVars()["page"]; 

alert(first); 
alert(second); 

function getUrlVars() { 
    var vars = {}; 
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { 
     vars[key] = value; 
    }); 
    return vars; 
} 
Смежные вопросы