|
|
|
|
var cnt = $(this).attr('data');
if(cnt==0)
show_model ($(this).val());
if(cnt==1)
show_details ($(this).val());
|
| |
|
|
|
|
|
|
|
для: technic611
(17.10.2013 в 13:29)
| | Обязательно switch? Синтаксис его конструкции точно такой же как и в РНР. Но совсем не обязательно он, лучше:
cnt ? show_details ($(this).val()) : show_model ($(this).val());
|
| |
|
|
|
|
|
|
|
для: confirm
(17.10.2013 в 14:06)
| | а если условий больше 4 например? | |
|
|
|
|
|
|
|
для: technic611
(17.10.2013 в 17:46)
| | Пишите switch, но если что-то разношерстное выполняется, в котором изменяются не параметры, а действия, то уж лучше тогда, например, так:
<script>
var cond = {
1:function(a){
alert('run 1 + '+a)
},
2:function(){
alert('run 2')
},
3:function(a){
alert('run 3 + '+a)
}
};
function runCondition(n) {
cond[n]('add'); //выполняем по условию, плюс передали доп. значение
}
</script>
<button onclick="runCondition(1)">Run 1</button>
<button onclick="runCondition(2)">Run 2</button>
<button onclick="runCondition(3)">Run 3</button>
|
Здесь применяется объект, в котором описана такая "шерсть", при этом объект выгоден тем, что можно при необходимости менять его свойства. | |
|
|
|
|
|
|
|
для: confirm
(17.10.2013 в 18:43)
| | что такое здесь а? | |
|
|
|
|
|
|
|
для: technic611
(17.10.2013 в 21:57)
| | Аргумент функции | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 05:30)
| | А если делать не через функцию? | |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 12:00)
| | Делайте, вы же хотели switch. | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 12:08)
| | Switch почему то не работает | |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 13:24)
| | А он то тут причем? Значит вы в конструкции пишите ляпсусы, поэтому и не работает. | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 13:41)
| | Так вы покажите как правильно | |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 14:28)
| | Так наверное сперва вам надо показать, что вы пишите реально, чтобы сказать, что у вас не правильно. | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 15:12)
| |
var cnt = $(this).attr('data');
switch(cnt) {
case 0:
show_model ($(this).val());
break;
case 1:
show_details ($(this).val());
break;
}
|
| |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 18:34)
| | Это что весь код или об остальных "участниках" этого действия мне надо догадаться? | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 18:37)
| |
// читаем ввод с клавиатуры
$(".search_box").keyup(function(I){
// определяем какие действия нужно делать при нажатии на клавиатуру
switch(I.keyCode) {
// игнорируем нажатия на эти клавишы
case 13: // enter
case 27: // escape
case 38: // стрелка вверх
case 40: // стрелка вниз
break;
default:
// производим поиск только при вводе более 2х символов
if($(this).val().length>1){
сюда поставил свитч
});
|
| |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 19:25)
| | Я же вас просил написать так, как у вас, а не о догадках, потому как если так как у вас - есть это, а вот туда воткнул то, то ошибка в скобках.
$("ЗДЕСЬ_ЖЕЛАТЕЛЬНО_УКАЗЫВАТЬ_ИМЯ_ТЕГА.search_box").keyup(function(e) {
if($.inArray(e.keyCode, [13,27,38,40])!=-1) return false;
else if(this.value.length>1) switch($(this).attr('data')) {
case 0: show_model(this.value);
break;
case 1: show_details(this.value);
}
});
|
Интересно было бы знать, что за поле такое в котором escape, стрелка вверх необходимо обрабатывать. | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 20:33)
| | Что за имя тега? Вообщет escape и стрелка вверх мы их не обрабатываем! | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 20:33)
| | Что за имя тега? Вообщет escape и стрелка вверх мы их не обрабатываем! | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 20:33)
| | Что за имя тега? Вообщет escape и стрелка вверх мы их не обрабатываем! | |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 21:44)
| | Того тега, к которому вы обращаетесь по имени класса.
Ну так на клавиатуре не только ESC и стрелки, там кроме букв и цифр еще куча клавиш, что же вы их тогда не проверяете для игнорирования? | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 22:54)
| | для всего остального служит default.
вы какими-то загадками пишите, что за имя тэга? вы можете пример дать, я не вообще первый раз такое слышу
вопрос с switch решил. оказывается нужно было добавить .length | |
|
|
|
|
|
|
|
для: technic611
(18.10.2013 в 23:08)
| | Я не знаю куда вам добавить length надо было, и что у вас там со switch. Какие еще могут быть загадки, если я вам русскими буквами написал.
Если вы обращаетесь к элементу (а это html-тег - div, ul, input и т.п., и т.д....) по имени класса, то указывайте не просто имя класса, но и имя тега. Если классом .foo обладают теги, например, DIV, значит писать надо:
$('div.foo') | |
|
|
|
|
|
|
|
для: confirm
(18.10.2013 в 23:25)
| | Для чего это делать, если и так все работает | |
|
|
|
|
|
|
|
для: technic611
(20.10.2013 в 21:52)
| | Если вам наплевать какой ценою дается такой поиск элемента и лишь бы работало, то да, говорить вам об этом не следовало. Если же не наплевать, то подумайте сами, почему это плохо. | |
|
|
|
|
|
|
|
для: confirm
(20.10.2013 в 22:28)
| | сколько мы сэкононмим времени доли секунды? сейчас уже не 95 год на дворе. и потом джиквери был создан чтоб облегчить все это прописывание, если я не прав, проккоментируйте | |
|
|
|
|
|
|
|
для: technic611
(21.10.2013 в 00:15)
| | Еще один о секундах думающий.
jQuery написан не для того, чтобы облегчить "прописывание", а как удобная библиотека функций и методов, которые вам нет необходимости создавать самому, а это никак не освобождает пользователя от обязанности думать, применяя эту библиотеку.
Но если вы считаете, что правы, о чем тогда говорить?
Да пишите как хотите, господи... | |
|
|
|