Как создать только определенное количество строк
У меня есть кусок кода, где пользователь может добавить новую строку в таблицу:
Ниже приведен код:
var qnum = 1;
function insertQuestion(form) {
var $tr = $("<tr></tr>");
var $qid = $("<td class='qid'>" + qnum + "</td>");
var $options = $("<td class='option'></td>");
$('.gridTxt').each(function() {
var $this = $(this);
var $optionsText = $("<input type='text' class='gridTxt' readonly='readonly' /><span href='#' class='showGrid'>[Open Grid]</span>").attr('name', $this.attr('name')).attr('value', $this.val())
$options.append($optionsText);
});
$tr.append($qid);
$tr.append($options);
$('#qandatbl').append($tr);
form.numberOfQuestions.value = qnum;
++qnum;
$("#questionNum").text(qnum);
form.questionText.value = "";
}
Однако я хочу создать только определенное максимальное количество строк. Максимальное количество строк, которое можно добавить, должно соответствовать количеству, опубликованному с другой страницы:
{$_POST['textQuestion']}
Так, например, если число $_POST['textQuestion']
20, то можно создать не более 20 строк.
Как это может быть сделано?
1 ответ
Решение
Если этот JS встроен в файл PHP, вы можете добавить строку в свою функцию JS, например:
function insertQuestion(form) {
if (qnum>=<?php echo (int)$_POST['textQuestion']; ?>) return();
// the rest of your code
++qnum;
}
Это будет отображаться как:
function insertQuestion(form) {
if (qnum>=20) return();
// the rest of your code
++qnum;
}
ИЛИ ЖЕ
Если JS не встроен в ваш PHP, вам нужно установить соответствующую переменную JS из PHP.. возможно, вот так...
<script type="text/javascript">
var maxRows=<?php echo (int)$_POST['textQuestion']; ?>;
</script>
тогда в вашем файле JS...
function insertQuestion(form) {
if (qnum>=maxRows) return();
// the rest of your code
++qnum;
}