Флаг функции как переменная
Приветствую!
Подскажите как из такого выражения onclick="newfunc(value)" достать value и присвоить его переменной, то есть function newfunc() { var abc = value; var abcd = value1; } |
function newfunc(newvalue){ var abc = newvalue; }Вот только это вопрос нифига не для форума. Это вопрос к самым первым главам любого учебника программирования. Причём даже не обязательно javascript. |
А какой смысл? Называйте сразу получаемый аргумент как Вам больше нравится.
function newfunc(abc) { } |
Цитата:
То есть newfunc(value) newfunc(value1) newfunc(value2) function newfunc() { var abc = value; var abcd = value1; var abcde = value2; } |
cript, функция вызывается каждый раз, соответственно исполняется каждый раз заново.
Можно изобразить что-то типа стека: newfunc('value'); newfunc('value1'); newfunc('value2'); function newfunc(value) { if(!newfunc.stack) newfunc.stack = []; newfunc.stack.push(value); if(newfunc.stack.length<3) return; var abc = newfunc.stack[0]; var abcd = newfunc.stack[1]; var abcde = newfunc.stack[2]; //работа с этими переменными alert([abc, abcd, abcde]); }но зачем?.. |
Цитата:
Вот например несколько ссылок <a href="#" onclick="newfunc(value)">Click</a> <a href="#" onclick="newfunc(value1)">Click1</a> <a href="#" onclick="newfunc(value2)">Click2</a> Они вызывают одну функцию, но имеют разное значение. Цитата:
|
Цитата:
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> </head> <body> <script> function newfunc(x) { var abc = x; alert(abc); } </script> <a href="#" onclick="newfunc(111)">Click1</a><br> <a href="#" onclick="newfunc(222)">Click2</a><br> <a href="#" onclick="newfunc(333)">Click3</a> </body> </html> Можно конечно написать код для получения всех аргументов с которыми функции вызываются на ссылках. Что-нибудь типо этого: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> </head> <body> <script> function newfunc() { var links = document.querySelectorAll('a[onclick^=newfunc]'); var args = []; for(var i = 0; i < links.length; i++) { var onclickAttr = links[i].getAttribute('onclick'); var arg = onclickAttr.match( /newfunc\((.+)\)/ )[1]; args.push(arg); } var abc = args[0]; var abcd = args[1]; var abcde = args[2]; alert(abc + ', ' + abcd + ', ' + abcde); } </script> <a href="#" onclick="newfunc(111)">Click1</a><br> <a href="#" onclick="newfunc(222)">Click2</a><br> <a href="#" onclick="newfunc(333)">Click3</a> </body> </html> Но это абсолютнейшее извращение и так делать не надо. А вообще, раз такие странные вопросы возникают, то не мешало бы хотя бы основы подучить. |
cript, ни хрена не понял.
Напиши чётко по пунктам от каких действий какого результата ты ожидаешь? |
Цитата:
Кликаю по одной из ссылок <a href="#" onclick="newfunc(111)">Click1</a> <a href="#" onclick="newfunc(222)">Click2</a> <a href="#" onclick="newfunc(333)">Click3</a> Вызывается функция, которая с помощью ajax вызывает нужный файл, а уже внутри самой функции if(value == '111') ... if(value == '222') ... if(value == '333') ... и т.д.. Цитата:
<script> function newfunc(x) { var abc = x; alert(abc); } </script> <a href="#" onclick="newfunc(opt)">Click</a> |
Цитата:
onclick="newfunc('opt')" Цитата:
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> </head> <body> <script> function newfunc(x) { if (x == 'aaa') { alert(111); } if (x == 'bbb') { alert(222); } if (x == 'ccc') { alert(333); } } </script> <a href="#" onclick="newfunc('aaa')">Click1</a><br> <a href="#" onclick="newfunc('bbb')">Click2</a><br> <a href="#" onclick="newfunc('ccc')">Click3</a> </body> </html> |
Часовой пояс GMT +3, время: 16:10. |