2015-07-02 4 views
0

Я имею поле ввода файла:Изменение значения атрибута с помощью JQuery

<input class="uploadReptCtrl" id="lang_file_1" name="photo[[1,312,3]]" type="file"> 

Я пытаюсь изменить третий элемент массива в атрибуте name так, что она становится:

<input class="uploadReptCtrl" id="lang_file_1" name="photo[[1,312,4]]" type="file"> 

Как это возможно?

ответ

1

Попробуйте

$('#lang_file_1').attr('name','photo[[1,312,4]]') 

https://jsfiddle.net/jzzL1d2r/

вы можете сохранить значение в переменной и установить его в качестве

var a = 4; 
$('#lang_file_1').attr('name','photo[[1,312,'+a+']]') 

https://jsfiddle.net/jzzL1d2r/1/

Как вы хотите, чтобы получить 3-й номер увеличьте его и назначьте его снова, вы можете сделать следующее

var numberPattern = /\d+/g; 
var string = $('#lang_file_1').attr('name'); 
var a = string.match(numberPattern); 

$('#lang_file_1').attr('name','photo[[1,312,'+(++a[2])+']]'); 

https://jsfiddle.net/jzzL1d2r/3/

+0

Можно ли извлечь третий элемент из массива, так что я могу увеличить его? – webster

+0

yes using regex вы можете получить значение, преобразовать его в целое и увеличить его. – Newinjava

+0

@rahulv проверить отредактированный ответ, если это то, что вы хотите. – Newinjava

Смежные вопросы