2015-09-29 2 views
0

У меня есть строка URL в JavaScript ниже экс- url- "/MyProject/Information/EmpDetails.aspx?userId=79874&countryId=875567"Split значение последнего слова в строке JavaScript

Теперь мне нужно сделать ниже 2 вещи

  1. Проверьте, существует ли страна в выше URL или нет, и будет только один CountryId в выше URL

  2. Получить значение CountryId означает 875567.

Спасибо, парни за такой хороший ответ быстро. Я получил решение, большинство ответов верное.

Еще один вопрос Ребята У меня есть гиперссылка, поэтому я генерирую некоторые действия, когда событие onmousedown. Но проблема в том, что он срабатывает, даже когда я делаю только щелчок правой кнопкой мыши. Но я хочу, чтобы событие, которое срабатывает только при нажатии на гиперссылку, или правая кнопка мыши и выберите

ответ

0

Вы должны использовать комбинацию из indexOf() и substring()

var ind = url.indexOf("countryId"); 
if (ind != -1){ 
    // value is index of countryid plus length (10) 
    var countryId = url.substring(ind+10); 
}else{ 
    //no countryid 
} 
1

Fetch URL с помощью

window.location.href

и

Сплита с '?' первый, «&» рядом и «=», так что вы можете получить CountryId

ИЛИ

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

0

Как о чем-то вроде это:

var TheString = "/MyProject/Information/EmpDetails.aspx?userId=79874&countryId=875567"; 

var TheCountry = parseInt(TheString.split('=').pop(), 10); 

И тогда вам просто нужно проверить, если что-то TheCountry с if (TheCountry) { ...}

Это, конечно, предполагает, что строка запроса URL всегда будет иметь идентификатор страны в конце.

0
var url ='/MyProject/Information/EmpDetails.aspx?userId=79874& countryId=875567'; 
alert((url.match(/countryId/g) || []).length); 
alert(url.substring(url.lastIndexOf('=')+1)); 

вы можете получить счетчик возникновения какой-либо строки в первой боевой готовности и получить значение CountryId по подстроке.

0

Это превратит Ваш URL запроса в объект

var data = url.split('?')[url.split('?').length - 1].split('&').reduce(function(prev, curr){ 
    var fieldName = curr.split('=')[0]; 
    var value = curr.split('=').length > 1 ? curr.split('=')[1] : ''; 
    prev[fieldName] = value; 
    return prev 
}, {}); 

, то вы можете просто проверить значение data.country получить значение

0

Вы также можете разделить строку и посмотреть, если CountryId существует, как показано ниже.

var myString = "/MyProject/Information/EmpDetails.aspx?userId=79874&countryId=875567"; 
myString = myString.split("countryId="); //["/MyProject/Information/EmpDetails.aspx?userId=79874&", "875567"] 
if (myString.length === 2) { 
    alert (myString.pop()); 
} 
Смежные вопросы