2014-12-19 4 views
0

У меня есть страница JSP, где я выбираю строки 5. Я добавляю Select Id s в массив sdata. Я добавил скрытую кнопку. alert показывает полный список. Как установить этот список в значение скрытого поля (mids)?Как обновить значение скрытого поля из JavaScript

<input type="hidden" name="mids" value=""> 

JavaScript:

$(document).ready(function() { 

var sdata =new Array(); 

    fn-create-ids{ 
    (checckbox.each.check()) 
     { 
     sdata.push(i); 
     } 
     document.GetelementbyName("mids").value=sdata; 
     alert(document.GetelementbyName("mids").value);---shows value 
    } 
If I add it here, it is empty 
document.GetelementbyName("mids").value=sdata;---empty 
} 
+0

UM, это не работает JavaScript. Нет 'GetelementbyName' I не знаю, какими бы случайными были строки 'fn -.... checckbox .....'. – epascarello

+0

'document.GetelementbyName' следует заменить на' document.getElementsByName' – sadrzadehsina

+1

На самом деле мне интересно, как это сделать потому что 'document.getElementsByName' возвращает массив. Вы не можете написать что-то вроде' document.getElementsByName («mids»). value' – sadrzadehsina

ответ

0

Дайте эти скрытые поля Некоторые IDS

, а затем использовать

document.getElementById('hiddenfieldID').value +="your value"; 

в JavaScript

Пример:

document.getElementById('mid').value += sdata; 

НО

На самом деле не понимаю, как эта функция работает

fn-create-ids{ 
    (checckbox.each.check()) 
     { 
     sdata.push(i); 
     } 
    } 

я думаю, что это значение должно быть i

document.getElementById('mid').value +=i; 
0

Ответ Sajad действителен, но если вы хотите использовать только имена, вот как это сделать. (Вы, возможно, уже есть форма в документе, если это так, то просто использовать существующий атрибут «имя» для Javascript)

<form name="midsForm"> 
    <input type="hidden" name="mids" value=""> 
</form> 

Тогда:

document.forms.midsForm.mids.value = "your value"; 
+1

или 'document.getElementsByName (" mids ") [0] .value = ...' – mplungjan

+0

@mplungjan И, скажем, ваш разработчик навигации добавляет обычно скрытую «navForm "над страницей, которая имеет вход" mids ". Все еще действительный HTML, но внезапно ваша форма сломалась! Конечно, «средние» - это необычный идентификатор. – Katana314

+0

Или они назовут navform midsForm, после чего ваш код тоже не сработает – mplungjan

0

У меня есть столбец заголовка, который флажок (проверка родителя). Динамически я заполняю нижние ряды. Теперь, когда я выбираю «parent-check», он выбирает все 13 строк, которые поступают из db. У меня есть кнопка отправки внизу экрана моего тега. когда я нажимаю кнопку «Отправить», я перехожу на другую страницу. Я поставлю флажок (parent-check), чтобы выбрать все строки, а затем нажмите кнопку «Отправить». К этому времени я хочу, чтобы javascript обновил мое скрытое значение поля с массивом, который будет содержать все выбранные идентификаторы строк. Jsp: В моем существующий сценарий, я нашел это:

$(document).ready(function() { 

var sdata =new Array(); 

    $("#parent-check").click(function() { 
    if ($(this).prop("checked")) { 
     $("td>:checkbox").each(function() { 
      sdata.push($(this).attr("mids"); 
     }); 
     } 
     document.GetelementbyName("mids").value=sdata; 
     alert(document.GetelementbyName("mids").value);---shows value 
    } 
If I add it here, it is empty 
document.GetelementbyName("mids").value=sdata;---empty 
} 
0

Он получает список массива внутри функции. Но список становится пустым, когда я выхожу из функции, хотя я объявляю его вне функции под $ (document) .ready (function().