• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Rozpoznawanie textu

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
429 wizyt
pytanie zadane 2 marca 2024 w JavaScript przez niezalogowany

JAK ZROBIC Żeby PO WPISANIU PO WPISANIU DO INPUTU NP HEJ W DIV  POJAWIŁ SIE TEXT : WITAM A Jeżeli BY SIE WPISAŁO PA TO POJAWIŁ SIE TEXT DO WIDZENIA WIENKSZĄSZC ROZUMIEM ALE NIE Wiem TO Zrobić

function sprawdz()
{
    var text = document.getElementById("liczba").value;
   
    if (text == hej) document.getElementById("odp").innerHTML="witam";
    else if (text == pa) document.getElementById("odp").innerHTML="do widzenia";

}

I próbowałem też z TEXT.value  =="Hej" ale nie dzała 

komentarz 2 marca 2024 przez Iei Bywalec (2,220 p.)
Pierwsze, co się rzuca w oczy to brak cudzysłowów między stringami w instrukcji warunkowej
komentarz 2 marca 2024 przez wizarddos Nałogowiec (27,710 p.)

@Infos, Pokaż nam też HTML'a. Tak bardziej pod kątem nazewnictwa. Czemu input z tekstem nazywa się "liczba"?

komentarz 2 marca 2024 przez niezalogowany

A POPROSTU TAK ZE LICZBA PRZYPADEK 

 

<!DOCTYPE html>

<html>
<head>
  
  
  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=UTF-8">
  <title> reakcja </title>
  <link rel="stylesheet" href="staleon.css" type="text/css" />
  <script src="istant.js" > </script>
  
  
</head>

<body>
  
  <form>
    
    <input type="text" id="liczba" />
    
  <input type="submit" value="wyslij" onclick="sprawdz()"/>
    
    <div id="odp">
      
      
      
    </div>
  
  </form>
</body>
</html>

Nie mów mi że dziwnie rzeczy nazywam to wiem 

 

A i rozumiem średnio js ale trochę umiem ale tego to nie rozumiem jak to zrobić 

komentarz 2 marca 2024 przez wizarddos Nałogowiec (27,710 p.)

Nie mów mi że dziwnie rzeczy nazywam to wiem 

Spoko, tylko że to bardzo utrudnia późniejsze czytanie kodu - szczególnie gdy jest on długi. Nazwa powinna reprezentować to co robi dana zmienna/stała/funkcja/klasa etc.

 

Btw, Caps lock naprawdę nie jest potrzebny

komentarz 2 marca 2024 przez niezalogowany
No rozumiem to

Za to nie rozumiem jak to zrobić

2 odpowiedzi

+1 głos
odpowiedź 2 marca 2024 przez wizarddos Nałogowiec (27,710 p.)

Jak wspomniano w komentarzu dodaj cudzysłowy do hej i pa w swoim JS + w HTML'u zamień

  <input type="submit" value="wyslij" onclick="sprawdz()"/>

Na

  <input type="button" value="wyslij" onclick="sprawdz()"/>

 

I jescze kilka uwag do kodu:

1. Po co używać `onclick` skoro istnieją event listenery

2. Zamiast `var` lepsze tu by było `let`, a nawet można by się pokusić o `const`

Jeszcze jak coś to zobacz sobie document.querySelector() i trochę różnic między nim a document.getElementByID()

 

Oprócz tego JS lepiej dodawać na końcu <body>  niż na początku w <head>

komentarz 2 marca 2024 przez niezalogowany
O let wiem ale jeszcze nie umiem :Dznaczy to pewnie proste i dziekuje
komentarz 2 marca 2024 przez wizarddos Nałogowiec (27,710 p.)

Używasz tak samo jak var, ale są małe różnice w widoczności

 

Tak po krótce np.

console.log(a);
var a = 5

Zadziała, ale zwróci undefined

A z kolei

console.log(a)
let a = 5

Zwróci błąd - więc łatwiej znajdziesz czemu ci coś nie działa

komentarz 2 marca 2024 przez niezalogowany


function sprawdz()
{
    var text = document.getElementById("liczba");
   
    if (text == "hej") document.getElementById("odp").innerHTML="witam";
    else if (text == "pa") document.getElementById("odp").innerHTML="do widzenia";

}


+

<!DOCTYPE html>

<html>
<head>
  
  
  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=UTF-8">
  <title> reakcja </title>
  <link rel="stylesheet" href="staleon.css" type="text/css" />
  <script src="istant.js" > </script>
  
  
</head>

<body>
  
  <form>
    
    <input type="text" id="liczba" />
    
  <input type="button" value="wyslij" onclick="sprawdz()"/>
    
    <div id="odp">
      
      
      
    </div>
  
  </form>
</body>
</html>

Tak? Mi coś nie dzała więc nie rozumiem

1
komentarz 2 marca 2024 przez niezalogowany
Nie ważne zapomiałem value juz dzała dziękuję bardzo
0 głosów
odpowiedź 3 marca 2024 przez VBService Ekspert (256,600 p.)
edycja 3 marca 2024 przez VBService

Proponuje rozwiązanie z tablicą, przy większej ilości słów pisanie kolejnych if-ów może sprawić problem (dodałem różne warianty odpowiedzi) wink.

[ demonstracja on-line ]

<DOCTYPE html>
  <html lang="pl">
    <head>
      <meta charset="UTF-8">
      <title>Reakcja</title>
      <link rel="stylesheet" href="staleon.css">

    </head>
    <body>
      <form>
        <input type="text" id="textbox">
        <button type="submit">Wyślij</button>

        <div id="replybox"></div>
      </form>

      <script src="istant.js"></script>
    </body>
  </html>
const dictionary = [
  { 'text':'hej',  'reply': [ 'Witam', 'Dzień dobry', 'Jak się masz!' ] },
  { 'text':'pa',   'reply': [ 'Do widzenia', 'Do zobaczenia', 'Żegnam!' ] },
  { 'text':'lol',  'reply': [] }
];

const form = document.querySelector('form');
form.addEventListener('submit', check);

function check(e) {
  e.preventDefault();
  const text = form.querySelector('#textbox').value.trim(),
        replybox = form.querySelector('#replybox');
  const found = dictionary.find(entry => entry.text.toLowerCase() === text.toLowerCase());
  if (found) {
    replybox.textContent = getRandomReply(found.reply);
  } else {
    replybox.textContent = 'Brak odpowiedzi dla podanego słowa.';
  } 
}

function getRandomReply(reply) {
  try {
    return reply[Math.floor(Math.random() * reply.length)];
  } catch (error) {
    console.error(error);
    return '';    
  }
}

 

Podobne pytania

0 głosów
1 odpowiedź 776 wizyt
pytanie zadane 2 czerwca 2016 w JavaScript przez Sarvite Obywatel (1,210 p.)
0 głosów
1 odpowiedź 336 wizyt
pytanie zadane 24 marca 2022 w Python przez Kubas23 Użytkownik (630 p.)
0 głosów
3 odpowiedzi 174 wizyt
pytanie zadane 8 czerwca 2020 w HTML i CSS przez auaauaaua Początkujący (370 p.)

93,434 zapytań

142,429 odpowiedzi

322,662 komentarzy

62,799 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...