функция spliturl добавляется дважды - PullRequest
0 голосов
/ 08 сентября 2011

вот код:

function chatWin(url,name){
    var nw;
    var splitUrlResults = url.split("#");

    url = appendDataWakeNVPs(splitUrlResults[0]) + '#' + splitUrlResults[1] ;

    nw=window.open(url,name,"height=600,width=433,left=100,top=100,resizable=yes,scrollbars=no,toolbar=no,status=no");

    if (nw.focus) {nw.focus();}
}

, а затем ссылка в коде:

PROD_TAB_EXPRT_LNK_EMAIL=javascript:chatWin('/customerService/contactUs/help.html#1','Help')

но полученный код:

<a href="javascript:chatWin('/customerService/contactUs/help.html#0#1','Help');">

Каждая ссылка добавляется # 0 перед идентификатором вкладки- (в данном случае # 1).

мысли

1 Ответ

0 голосов
/ 08 сентября 2011

Мне кажется, что единственный URL-адрес заканчивается на #0#1 в конце, если appendDataWakeNVP() добавляет #0 к возвращаемому значению, а ваш код добавляет #1 в конецоб этом.

Итак, я думаю, что ваша проблема в appendDataWakeNVP().Я бы посоветовал войти в эту функцию в вашем любимом отладчике, и вы сможете узнать, что он делает.Или найдите его в дереве исходного кода и проверьте его в редакторе.Если предполагается добавить #0 в конец, и вы не можете это изменить, но вы не хотите этого там, то вам придется удалить это, прежде чем добавлять свой собственный хеш в конец.

Любое хеш-значение, которое вам не нужно, можно удалить с помощью этого:

url = url.replace(/#.*$/, "");

Таким образом, вы можете изменить эту строку кода:

url = appendDataWakeNVPs(splitUrlResults[0]) + '#' + splitUrlResults[1] ;

на следующее:

url = appendDataWakeNVPs(splitUrlResults[0]).replace(/#.*$/, "") + '#' + splitUrlResults[1] ;
...