Для окон:
system("rmdir ".escapeshellarg($path) . " /s /q");
Добавьте следующий код для добавления функции обрезки строки.
if(typeof String.prototype.trim !== 'function') {
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, '');
}
}
Я не думаю, что в стандарте JavaScript есть собственный метод trim()
. Возможно, Mozilla предоставляет такой метод, но если вам нужен такой метод в IE, вам придется написать его самостоятельно. На этой странице есть несколько версий.
Может быть, в это время параметр null
?
Из абзаца сразу после этого кода объясняет это. Существует сочетание пакетных и лексических переменных в одной области:
-121--3147194-Остальная часть сокращения работает как сортировка, помещая два элемента в пакетные переменные $ a и $ b. Грэм определяет лексические переменные с этими именами и немедленно назначает typeglobs для $ a и $ b в вызывающем пакете с помощью символьных ссылок. После этого значения $ a и $ b являются лексическими версиями. Когда он вызывает аргумент подпрограммы & {$ code} (), этот код просматривает переменные пакета, которые действуют, когда я написал подпрограмму. Понял? Внутри уменьшите, я использую лексические версии, но внутри $ code, я использую версии пакета из вызывающего пакета. Вот почему Грэм сделал им псевдонимы друг друга.
https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Global_Objects/String/Trim
Это довольно недавнее дополнение к javascript, не поддерживаемое IE.
К сожалению, кроссбраузерная поддержка JavaScript для trim() отсутствует.
Если вы не используете jQuery (у которого есть метод .trim()), вы можете использовать следующие методы для добавления поддержки обрезки строк:
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
return this.replace(/\s+$/,"");
}
Похоже, что эта функция не реализована в IE. Если вы используете jQuery, вы можете использовать $.trim()
вместо этого (http://api.jquery.com/jQuery.trim/).
var res = function(str){
var ob; var oe;
for(var i = 0; i < str.length; i++){
if(str.charAt(i) != " " && ob == undefined){ob = i;}
if(str.charAt(i) != " "){oe = i;}
}
return str.substring(ob,oe+1);
}
У меня была аналогичная проблема, когда я пытался обрезать значение из ввода, а затем спрашивал, равно ли оно нулю:
if ($(this).val().trim() == "")
Однако это бросило вызов в работе над IE6 - 8. Достаточно досадно, что я пытался var it up примерно так:
var originalValue = $(this).val();
Однако использование метода обрезки jQuery отлично работает у меня во всех браузерах ..
var originalValueTrimmed = $.trim($(this).val());
if (originalValueTrimmed == "") { ... }