Цитата:
<a href="" id="d1">ПЕРВАЯ</a> <script type='text/javascript'> $(function() { $('#d1').click(function (eventObject) { //при клике на ссылку eventObject.preventDefault(); $('.all').load("all.php #infa1"); var one = "$('.all').load( "all.php #infa1")"; //запишется в переменную one текст localStorage.setItem("all", one); //запишется в localStorage ключ all со значением из one }); var oneL = localStorage.getItem("all"); //возмется ключ all и присвоется в oneL alert(oneL); //должно вывести что находится в oneL }); </script> Или подскажите как правильно заэкранировать в 8ой строке |
Сделал так, по логике должно при клике на первую ссылку вместо oneL выводиться строка которую я записал в локалсторадж после перезагрузки страницы, но почему то не выводит, хотя если через alert пробовать, то выводит строку
<a href="" id="d1">один</a> <a href="" id="d2">два</a> <a href="" id="d3">три</a> <a href="" id="d4">четыре</a> <script type='text/javascript'> $(function one() { $('#d1').click(function (eventObject) { //при клике на ссылку eventObject.preventDefault(); $('.all').load("all.php #infa1"); var one = ' $(\'.all\').load( "all.php #infa1"); '; //запишется в переменную one текст localStorage.setItem("one", one); //запишется в localStorage ключ all со значением из one }); var oneL = localStorage.getItem("one"); $( function ready() { oneL; $('#d1').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa1");} ); $('#d2').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa2");} ); $('#d3').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa3");} ); $('#d4').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa4");} ); });//END }); </script> <div class="all"></div> |
Цитата:
Так вот понятно будет? <!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='http://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> <link rel='stylesheet type=text/css href=tmp.css' /> <link rel="stylesheet/less" type="text/css" href="style.less"> <script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/2.5.0/less.min.js"></script> --> <style type='text/css'> </style> <script type='text/javascript'> $(function(){ var url=localStorage.getItem("url")||"all.php"; $('#info').text(url); $('.test').click(function() { var url="all.php #infa"+$(this).text(); $('#info').text(url); localStorage.setItem("url", url); }); }); </script> </head> <body> <a href="" id="d1" class='test'>1</a> <a href="" id="d2" class='test'>2</a> <a href="" id="d3" class='test'>3</a> <a href="" id="d4" class='test'>4</a> <div id="info"></div> </body> </html> |
Цитата:
Но теперь возник еще один вопрос, я когда меняю текст внутри href, то сразу всё ломается. Есть какой то способ изменить текст на нужный? |
Цитата:
|
НУ смотрите сами - значение переданного это номер, и он же определяет сообщение, ну так выгоднее сразу
$_SESSION['info'] = $_GET['info']; и echo $message[$_GET['info']]; |
Ну так в этом случае ваш пример явно неудачный, ибо зачем же switch, если case 1 при $_SESSION['info'] = 1? Кроме того, если значения произвольные, то каким образом выкрутиться и в switch, ведь и для нее это будет проблемой.
|
Ну так извините, и кличи массива могут иметь имена произвольные. Суть не в этом. Что в вашем примере? А в нем явно ожидаемые значения, которые и проверяются, то есть 1, 2, 3. Вопрос встал о том, что если значения изменяться или дополняться (я правильно понял?), то case ну как волшебник, сам их подставить что-ли? Понятно что нет, и что их придется писать ручками, ну и какая разница, если я добавлю в массив ключи новые?
Что switch, что ключи в массиве, это приемлемо только для ожидаемых фиксированных значений. Удобство чего-то там разместить, это уже прострация, мы говорим о простом, что было показано, и для него switch, это лишнее. Что касается default, то в случае использования массива, потребуется проверка - если есть ключ, исполняем, иначе по умолчанию. |
Цитата:
|
Часовой пояс GMT +3, время: 22:41. |