У меня есть флажок, в котором хранятся значения из таблицы базы данных. Поэтому он содержит массив значений, когда я показываю их на своей странице.
<input type="checkbox" id="chkdelt[<?php echo $id; ?>]" name="chkdelt[]" value="<?php echo $id; ?>">
Выше приведен код.
У меня есть всплывающий блок, который показывает количество проверенных флажков.
<div class="popup">
Show count here <span id="numb"></span>
<button type="button" onclick="paz(<?php echo json_encode(chkdelt); ?>);">Click</button>
</div>
И я могу показать счет успешно, используя эту функцию javascript, приведенную ниже.
// used to show number of checked checkboxes in popup
function dumpInArray(){
var arr = [];
$('.table-responsive input[type="checkbox"]:checked').each(function(){
arr.push($(this).val());
});
return arr.length; //returns no of checked check boxes
}
$('.select_chk').click(function () {
$('#numb').html(dumpInArray()); // output of dumpInArray() written into numb span
});
И я пытаюсь передать этот массив функции Javascript, щелкая по кнопке внутри всплывающего окна.
Мой Javascript приведен ниже:
function paz(a)
{
var temp = new Array();
temp = JSON.parse(a);
for(i=0;i<temp.length;i++)
{
alert(temp[i]);
}
}
Значения не передаются в paz() в Javascript. Отдых отлично работает. Я хочу передать значения всех отмеченных флажков в paz(), когда я нажимаю кнопку во всплывающем div.
Благодарю. Помогите???
Вам нужно передать аргумент функции JavaScript как строку.
Вы передаете их как переменную, которая, в свою очередь, станет undefined
.
Чтобы передать аргумент в виде строки, используйте function_name('arg')
или function_name("arg")
.
Таким образом, при изменении кода:
<button type="button" onclick="paz(<?php echo json_encode(chkdelt); ?>);">Click</button>
в
<button type="button" onclick="paz('<?php echo json_encode(chkdelt); ?>');">Click</button>
Также я предлагаю вам использовать <input type="button"/>
Вместо <button>
и я думаю, что если chkdelt
- это переменное имя в php, вам нужно будет использовать знак $
перед ним и использовать json_encode($chkdelt)
.
Надеюсь, это тебе поможет.. Приветствия!
html
после обработкиphp
? В вашем браузере откройте эту страницуphp
а затем используйтеview source
чтобы получить актуальныйhtml
. Или просто попробуйте предупредитьa
в вашейfunction paz(a)
что является выходомa
?