Как передать функции разделитель полей? 
		
		
		
		Есть следующий код: 
	
onchange="submitForm('csv_table', 'csv_table.cgi', this.value, 'file.csv', ';')"
и дальше 
function submitForm(par1, par2, par3, par4, par5, par6) {
...
}
Доходит всё, кроме точки с запятой. Как я понимаю, она воспринимается программой как разделитель полей и поскольку за ней нет ничего - приходит "пусто". Идеальным вообще был бы вариант, когда всё это можно было бы упаковать в массив, например, как это делается на Perl: @args = ($a, $b, $c); system @args; И дальше уже не твоя забота экранировать значения.  | 
	
		
 И точка с запятой доходит:)  
	
<input onchange="submitForm('csv_table', 'csv_table.cgi', this.value, 'file.csv', ';')">
<script>
function submitForm(par1, par2, par3, par4, par5, par6) {
   alert(par5);
}
</script>
 | 
	
		
 Спасибо! Я понял, косяк где-то в этих строчках в function submitForm: 
	
req.open('POST', par2, true);
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
req.send("var1=" + par3 + "&var2=" + par4 + "&var3=" + par5 + "&var4=" + par6);
Когда у нас в параметре "par5" находится ";" (точка с запятой), то cgi скрипт на том конце трактует её как и "&" - как разделитель переданных значений, а не как значение. Тогда вопрос: как скрипту передавать ";"?  | 
	
		
 Я сделал "костыли" и сейчас всё работает, но желательно бы как-то во всех этих параметрах "par + цифра" производить замену всех возможных "Percent-encoding reserved characters", а не  только ";" на "%3B". 
	Может быть кто-то из гуру подскажет? А то у меня с Javascript дружба слабая.  | 
	
		
 Вы следуете использовать процентную кодировку для каждой части 
	Пишите encodeURIComponent(par5) вместо par5  | 
| Часовой пояс GMT +3, время: 07:46. |