Помогите новичку со скриптом
Всем привет, пытаюсь пересесть с 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, время: 22:36. |