Цитата:
var o={}; o.result=[1,2,3,4,5]; test("result"); function test(Name) { alert(o[Name][0]); }; |
Mafa, опиши контекст задачи. Уверен, можно запросто обойтись без eval притом без особых усилий.
|
Mafa, а для чего в .activeCountri вам значение 'result[0]'? Почему бы не сократить его до '0'. Чтобы потом использовать result[i], где var i = $(".activeCountri").val();
|
Неее, ребята. Там куча массивов, и в зависимости от выбранного селекта, нужно взять значение из определённого массива.
var astana = [20000, 27500, 37500, 48000, 60000, 80000, 100000, 115000, 115] var karaganda = [31000, 38500, 51500, 63500, 83500, 113000, 139000, 144000, 144] var almata = [20000, 27500, 37500, 50000, 65000, 83000, 105000, 125000, 125] var taraz = [25000, 35000, 47500, 67000, 85000, 106000, 134000, 165000, 160] var schimkent = [25000, 35000, 52500, 69000, 87000, 108000, 137000, 170000, 165] var kyzylorda = [27000, 37000, 51500, 71000, 100000, 128000, 165000, 200000, 180] var kokschetau = [33000, 35000, 51500, 66500, 88000, 112000, 138000, 143000, 155] var petropavl = [34000, 39000, 52000, 68000, 98000, 122000, 146000, 150000, 161] var kostanay = [34000, 39000, 52000, 58000, 75000, 115000, 140000, 145000, 155] var pavlodar = [34000, 39000, 52500, 68000, 90500, 115000, 140000, 145000, 160] var semey = [35000, 38500, 54500, 71000, 95500, 120000, 138000, 143000, 165] var uskaman = [36000, 38500, 55000, 72500, 97800, 120000, 145000, 150000, 165] А в зависимости от введённого числа - получить доступ к определённому значению этого определённого массива))))))) var count = eval($(".activeCountri").val()); if(maxves <= 50){var resv = count[0]} else if(100 >= maxves && 51 <= maxves){var resv = count[1]} else if(200 >= maxves && 101<= maxves){var resv = count[2]} else if(300 >= maxves && 201<= maxves){var resv = count[3]} else if(500 >= maxves && 301<= maxves){var resv = count[4]} else if(600 >= maxves && 501<= maxves){var resv = count[5]} else if(800 >= maxves && 601<= maxves){var resv = count[6]} else if(1000 >= maxves && 801<= maxves){var resv = count[7]} else if(2000 >= maxves && 1001<= maxves){var resv = maxves * count[8]} else{var resv = "Цена договорная!"} Как-то так... |
Пиши так:
var cities = { astana: [20000, 27500, 37500, 48000, 60000, 80000, 100000, 115000, 115], karaganda: [31000, 38500, 51500, 63500, 83500, 113000, 139000, 144000, 144] }; Так ты сможешь обратиться к значению через ключ имея строку (о чем было уже сказано выше): cities['astana'] |
Цитата:
window['astana'] Но, понятное дело, правильнее их собрать в один, например, cities, как уже посоветовали. |
var result = '$(".activeCountri").val()';
ток когда нужно if(...)eval(result) Хотя кошернее: var result[1] = function(){return $(".activeCountri1").val()} var result[2] = function(){return $(".activeCountri2").val()} var a1=result[1](); var a2=result[2](); |
danik.js, ну наконец-то до меня дошло) Спасибо, работает)))
Deff, $(".activeCountri") - это селекторы со списком городов, в зависимости от выбора пользователя, скрипт обращается к определённому массиву) Я не поняла твоего варианта) Все огромное спасибо, я пока учусь и, чувствую, буду частым гостем тут) Потому как зачастую, в сети сложно найти ответ ввиду того, что не имея опыта сложно сформулировать запрос) А тут человеческим языком спросил - по-человечески ответили) Супер) |
Кстати ключи (на самом деле и имена переменных) могут быть на кириллице:
var cities = { 'астана': [], 'караганда': [], }; |
Часовой пояс GMT +3, время: 23:52. |