Использовать JavaScript для stripslashes? возможное

Я использую ajax для захвата URL-адреса. Проблема заключается в том, что в URL-адресе есть косые черты, а при загрузке JQuery послесловия он не загружает страницу.

Успешный бит AJAX:

success: function(data) { $('#OPTcontentpanel').load(data.OPTpermalink); 

PHP

 echo json_encode( array('OPTpermalink'=>$OPTpermalink,)); 

И ответ

 http:\/\/www.divethegap.com\/update\/options\/padi-open-water\/ 

Поэтому нужно стричь косые черты. Я знаю, как это сделать на PHP, но не в AJAX JavaScript.

Есть идеи?

дивный

Solutions Collecting From Web of "Использовать JavaScript для stripslashes? возможное"

Новый ответ на старый вопрос:

 String.prototype.stripSlashes = function(){ return this.replace(/\\(.)/mg, "$1"); } 

Пример использования:

 var str = "You\'re slashed \/\\..\/\\"; // Text from server str = str.stripSlashes() ; 

вывод:

 You're slashed /\../\ 

Это старый пост, но я думал, что добавлю свой ответ, кажется более эффективным, чем некоторые другие ответы здесь:

 var url = "http:\/\/www.divethegap.com\/update\/options\/padi-open-water\/" var res = url.replace(new RegExp("\\\\", "g"), ""); 

Это заменит все вхождения символа обратной косой черты ничем.

Вы отправляете JSON, но вставляете его непосредственно в элемент HTML. Это не разумно, может создать сломанные результаты и, вероятно, не то, что вы хотите сделать в первую очередь.

Вы должны, вероятно, либо

  • изменить выход PHP-скрипта для создания надлежащего HTML-кода

  • ожидайте JSON со стороны JavaScript (используя параметр dataType jQuery или сокращенную $.json() и проанализируйте, что

Был хороший порт многих основных функций php, включая stripslashes здесь: http://phpjs.org/functions/stripslashes/

 function stripslashes (str) { // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: Ates Goral (http://magnetiq.com) // + fixed by: Mick@el // + improved by: marrtins // + bugfixed by: Onno Marsman // + improved by: rezna // + input by: Rick Waldron // + reimplemented by: Brett Zamir (http://brett-zamir.me) // + input by: Brant Messenger (http://www.brantmessenger.com/) // + bugfixed by: Brett Zamir (http://brett-zamir.me) // * example 1: stripslashes('Kevin\'s code'); // * returns 1: "Kevin's code" // * example 2: stripslashes('Kevin\\\'s code'); // * returns 2: "Kevin\'s code" return (str + '').replace(/\\(.?)/g, function (s, n1) { switch (n1) { case '\\': return '\\'; case '0': return '\u0000'; case '': return ''; default: return n1; } }); } 

Вы попробовали string.replace?

 success: function(data) { $('#OPTcontentpanel').load(data.OPTpermalink.replace("\\", ""));