Помогите новичку со скриптом
Всем привет, пытаюсь пересесть с vbs на JS.
На форме есть текстовое поле и кнопка с функцией() + скрипт В скрипте массив из3-5 элементов, нужно сделать поиск и выводить результат на страницу... var Arr = [3]; //создем массив Arr[0] = "первый"; Arr[1] = "второй"; Arr[2] = "третий"; Arr[3] = "четвертый"; function getTextInFind() { var Item=document.forms[0].sub.value.toLowerCase(); for(var i = 0; i < Arr.length; i++); var с = item.length; Var d = Arr[i].value; var b = d.substr(1,c); if (item=b) { document.write(Arr[i]); } } Выдает ошибку на строке 12 - предполагается наличие ";" Подскажите в чем проблема??? |
js - регистрозависимый язык, var необходимо писать с маленькой буквы
|
в 12й строке Var с большой буквы
|
10 строка. Зачем ; стоит?
12 строка. var пишется с маленькой. 14 строка. Логика условия, скорее всего, нарушена. Прочитай про оператор == |
Про 10 строку еще не понял как концовку передавать, 12 исправил, теперь ошибка = не удается получить значение Arr[i].value? Это значит что массив не загрузился???
|
Safort,
Пожалуйста помогите !!! очень нужно разобратся со скриптом... Переделал скрипт так var Arr = new Array(4); window.onload = function() { Arr[0] = "первый"; Arr[1] = "второй"; Arr[2] = "третий"; Arr[3] = "четвертый"; } function getTextInFind() { var Item=document.forms[0].sub.value.toLowerCase(); for(var i = 0; i < 4; i++) var c = item.length-1; var d = Arr[i]; var b = d.substr(0,c); if (item==b) { document.write(Arr[i]); } } И все равно substr ошибка, в справочнике прочитал, вроде так... |
Люди !!! уже так переделал, все равно херня...
var Arr = new Array(4); window.onload = function() { Arr[0] = "первый"; Arr[1] = "второй"; Arr[2] = "третий"; Arr[3] = "четвертый"; } function getTextInFind() { var Item=document.forms[0].sub.value.toLowerCase(); for(var i = 0; i < 4; i++) if (Arr[i].localeCompare(item) ==0) { document.write( + Arr[i]); } } скажите как надо??? |
Lexx32,
попробуй так function getTextInFind() { var Arr = ["первый", "второй", "третий", "четвертый"]; var Item = document.forms[0].sub.value.toLowerCase(); for(var i = 0; i < Arr.length; i++) { var с = Item.length; var d = Arr[i]; var b = d.substr(1, c); if (Item == b) { document.write(Arr[i]); } } } window.onload = function() { getTextInFind(); }; |
Цитата:
<!DOCTYPE html> <html> <head> <!-- <script src='http://code.jquery.com/jquery-latest.js'></script> <link rel='stylesheet type=text/css href=tmp.css' /> --> <style type='text/css'> </style> <script type='text/javascript'> var a=[]; a[0] = "первый"; a[1] = "второй"; a[2] = "третий"; a[3] = "четвертый"; function test() { var val=document.getElementById('str').value; var re=new RegExp('\^'+val,'i') for(var i = 0; i < a.length; i++) { if (re.test(a[i])) { document.getElementById('info').innerHTML=i; return; }; }; document.getElementById('info').innerHTML='No'; }; </script> </head> <body> <form onsubmit='test(); return false;'> <input type='text' id='str' value='третий' /> <button>Test</button> <div id='info'></div> </form> </body> </html> |
ksa,
Большое спсибо - мне нужно было сделать простой поиск по мини бд в js файле я 22 строку document.getElementById('info').innerHTML=i; заменил на document.getElementById('info').innerHTML=a[i]; и у меня выходит запись, но как сделать чтоб выходили все записи??? убрал return??? |
Цитата:
<!DOCTYPE html> <html> <head> <!-- <script src='http://code.jquery.com/jquery-latest.js'></script> <link rel='stylesheet type=text/css href=tmp.css' /> --> <style type='text/css'> </style> <script type='text/javascript'> var a=[]; a[0] = "первый"; a[1] = "второй"; a[2] = "третий"; a[3] = "четвертый"; a[4] = "третий"; function test() { var val=document.getElementById('str').value; var dlm=''; var re=new RegExp('\^'+val,'i') for(var i = 0; i < a.length; i++) { if (re.test(a[i])) { document.getElementById('info').innerHTML+=dlm+a[i]; dlm=', '; }; }; }; </script> </head> <body> <form onsubmit='test(); return false;'> <input type='text' id='str' value='третий' /> <button>Test</button> <div id='info'></div> </form> </body> </html> |
ksa,
Большое спасибо, я ваще не программист, просто балуюсь... для своего предприятия делаю сайт а знаю тока vbs,vb6,1c77 немного делфи, на vbs для ie накатал вот это <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Windows-1251"> <TITLE></TITLE> </HEAD> <SCRIPT LANGUAGE="VBScript"> Dim Arr(10) Sub LoadMass() Arr(1)="Бинт трубчатый лат.-полиэф.Интекс №2 (0,;Интертекстиль;01.08.16;6.3;4605086000041" Arr(2)="Дальфаз ретард таб. пролонг. действ. п/о;Санофи-Винтроп Индустрия;01.11.14;2345.9;3582910005407" Arr(3)="Корнам табл. 2 мг х20;LEK;01.04.15;330.5;3838957871018" Arr(4)="Лаксигал капли 7,5мг/мл 10мл фл.-кап.;АЙВЭКС Фармасьютикалс с.р;01.03.15;248.25;8594737197512" Arr(5)="Лодоз 2.5мг+6.25мг Таб. п/о Х30;Мерк Сантэ с.а.с.;31.01.15;279.2;3596540090016" Arr(6)="Тмина плоды сырьё , 50 г;фирма Здоровье ЗАО(143430;01.01.15;35.55;4601214000631" Arr(7)="Травоген крем 1% 20г;Интендис Мануфэкчуринг С.;01.12.16;532.45;4260085520336" Arr(8)="Три-Мерси табл. х21;Organon;01.11.14;789.6;4601910000430" Arr(9)="Турамин I-Йод ь90;ООО ВИС;29.10.14;135.55;4607039973969" Arr(10)="Турамин Mn-Марганец ь90;ООО ВИС;03.10.14;144.9;4607039973976" End Sub Sub Button1_OnClick() dim val dim i,x,y dim tab() dim A dim s document.getElementById("info").innerHTML="" LoadMass val=document.getElementById("str").value x=-1:y=0 for i=0 to Ubound(Arr)-1 if instr(1,lcase(Arr(i)),lcase(val),vbTextCompare)>0 then if len(Arr(i))>0 then x=x+1 s=Arr(i) A=split(s,";") redim preserve tab(4,x) tab(0,x)="<tr><td>" & A(0) & "</td>" tab(1,x)="<td>" & A(1) & "</td>" tab(2,x)="<td>" & A(2) & "</td>" tab(3,x)="<td>" & A(3) & "</td>" tab(4,x)="<td>" & A(4) & "</td></tr>" end if end if next res="<table border=1>" res=res & "<tr><th>Наименование</th><th>Изготовитель</th><th>Срок годности</th><th>Цена</th><th>EAN</th></tr>" for y=0 to x res=res & tab(0,y) & tab(1,y) & tab(2,y) & tab(3,y) & tab(4,y) next res=res & "</table>" document.getElementById("info").innerHTML=res End sub </script> <body> <Center><b style="color:#0000ff"> Фарм. деятельность </Center></b> <br> <table width="100%" height="100%"> <tr><td valign="top" style="text-align: center; font-size: 10pt;"> <br /> <ul> <H2>Поиск пока реализован для IE8, Chrom</H2> <H2>Остатки актуальны на 19.11.2014 г. 13:41:08</H2> <li>Введите: наименование лекарственного средства ...</li> <li>Нажмите "Поиск" чтобы увидеть результаты поиска.</li> </ul> <form> <input type="text" id="str" value="" /> <INPUT NAME="Button1" TYPE="BUTTON" VALUE="Найти"> <div id="info"></div> </form> </td></tr><tr><td style="text-align: center; font-size: 8pt;" valign="bottom"> <br/> </td></tr> </table> </div> </body> </HTML> а сейчас сижу пытаюсь переделать на js и честно вообще до логики языка не догоняю. Но всеже большое спасибо за пример. |
Часовой пояс GMT +3, время: 15:02. |