Заполнение и проверка ячеек таблицы
Строится след динамическая таблица (размерность 4xn). Ячейки таблицы заполняются от 0 до n (n- число из inputа с id="cols").
Необходимо чтобы 2 строка заполнялась от 0 до n как сейчас, а 4 строка по формуле ![]() Код:
|
MrSmitt,
Ты же можешь в своем makeRow сделать проверку на === 4 и в таком случае заполнять строку по другому правилу и если у тебя p === q то в схеме бернулли можно(логично) оставить p c показателем "n" |
Не понял насчёт makeRow, которые фактически участвует в заполнении 0 и 2 строк таблицы заголовками-буквами.
В моём понимании , нужно изменить часть кода for (var i = 0; i < count; i++) { if (this[0].tagName === 'TD') { this.html(i) } $.merge(tmp, this.clone().get()); } (в котором идёт заполнение по числу колонок count), так чтобы проверялась строка "tr:odd:first" Rise, ![]() |
MrSmitt,
Ну вот же у тебя есть for (var i = 0; i < opts.row; i++) { table.append(methods.makeRow(i)); } и opts.row у тебя == 2 Ты в цикле передаешь индекс i в метод makeRow Что тебе мешает проверить этот индекс на === 4 (или сколько тебе там надо) прежде чем делать return |
Rise,
Хотел делать проверки в makeRow (if i===0) и (if i===1) и соответственно возвращать условно говоря duplicate или ново написанный duplicate2 , но Ваш вариант оказался более лаконичен. Что касается формулы, можно ли написать функцию для вычисления факториала $.fn.factorial=function(i){ if(i==0 || i==1) {return 1;} else { return(i*factorial(i-1)); } }; и как его следует вызвать здесь? this.html(/* по формуле */); |
factorial jquery
MrSmitt,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script> $(function() { $.fn.factorial = function(m_x) { function f_Factorial(m_x) { if (m_x == 0 || m_x == 1) return 1; else return m_x * f_Factorial(m_x - 1) } var Factorial = f_Factorial(m_x); return this.length ? $(this).text(Factorial) : Factorial }; $("div").factorial(5).css({ color: "#FF0000" }); $("p").text($.fn.factorial(4)).css({ color: "#FF00FF" }) }); </script> </head> <body> <div></div> <div></div> <p></p> <p></p> </body> </html> |
рони,
благодарю, а не могли бы разъяснить 19 строку? Rise, такой вызов в купе с факториалом из поста #9 не сработал,поэтому и задал вопрос. А вот так получилось this.html($.fn.factorial(i)); |
Цитата:
|
Цитата:
this.factorial(i) |
рони,
Спасибо за пояснения, не учёл, что обычного return (15, 16 строка) недостаточно и нужно выйти из "цикла" (14). А как следует проверять значения в ячейках? Т.е. то, что допустим в 4 ряду во 2й ячейке именно то значение, которое посчиталось в $.fn.duplicate = function (count, row) иначе alert? |
Часовой пояс GMT +3, время: 03:22. |