Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 43.497
» Neuestes Mitglied: Yamini Das
» Foren-Themen: 521
» Foren-Beiträge: 2.117

Komplettstatistiken

Benutzer Online
Momentan sind 202 Benutzer online
» 1 Mitglieder
» 199 Gäste
Bing, Facebook, Sempervivum

Aktive Themen
Payment Gateway for Onlin...
Forum: Ankündigungen,Neuigkeiten
Letzter Beitrag: benjaminmassy
Gestern, 11:01
» Antworten: 0
» Ansichten: 12
What are the drug interac...
Forum: Javascript
Letzter Beitrag: azaviona
Gestern, 07:24
» Antworten: 0
» Ansichten: 19
Hall an alle
Forum: Seid ihr neu ?
Letzter Beitrag: Andreas
08.05.2024, 14:32
» Antworten: 0
» Ansichten: 14
Ghostbusters frozen empir...
Forum: Javascript
Letzter Beitrag: foreverjackets
06.05.2024, 20:23
» Antworten: 0
» Ansichten: 39
Alert Fenster
Forum: Javascript
Letzter Beitrag: Sempervivum
04.05.2024, 18:25
» Antworten: 2
» Ansichten: 52
How does Tadalista affect...
Forum: Php
Letzter Beitrag: azaviona
03.05.2024, 09:36
» Antworten: 0
» Ansichten: 57
https://blog.indiagpt.com...
Forum: Javascript
Letzter Beitrag: indiagpt
03.05.2024, 08:18
» Antworten: 0
» Ansichten: 73
Unlocking the Mystery: Ne...
Forum: Datenbanken
Letzter Beitrag: richardrussel
02.05.2024, 10:20
» Antworten: 0
» Ansichten: 61
Best career counsellor in...
Forum: CoffeeScript
Letzter Beitrag: Captain12
02.05.2024, 08:13
» Antworten: 0
» Ansichten: 67
Thesis Writing Service
Forum: CoffeeScript
Letzter Beitrag: Captain12
02.05.2024, 08:10
» Antworten: 0
» Ansichten: 39

  Validierung von Radio Buttons
Geschrieben von: tanotu - 14.11.2021, 16:03 - Forum: Javascript - Keine Antworten

Hallo zusammen

Ich bin gerade dabei, ein Formular mit JavaScript zu validieren. Grundsätzlich funktioniert das auch soweit, bis auf die Radio Buttons. Ich verstehe leider einfach nicht, was der EventListener alles beinhalten muss und wie dann die eigentliche Funktion, welche prüft, ob die Radio Buttons geklickt wurden, aussehen muss. Hier einmal mein bisheriger Code:

Code:
const name = document.getElementById('name');
const email = document.getElementById('email');
const message = document.getElementById('message');
const btnSend = document.getElementById('submit');
const quality = document.getElementById('qualityRadio');
const prices = document.getElementsByName('prices');

const errPrices = document.getElementById('errPrices');
const errQuality = document.getElementById('errQuality');

let qualityAlreadyFilled = false;
let pricesAlreadyFilled = false;
let nameAlreadyFilled = false;
let emailAlreadyFilled = false;
let messageAlreadyFilled = false;

function showError(input, message) {
    const formControl = input.parentElement;
    const errorMessage = formControl.querySelector('span');

    errorMessage.innerText = message;
    formControl.className = 'form-control error';
}

function showSuccess(input) {
    const formControl = input.parentElement;
    formControl.className = 'form-control success';
}

name.addEventListener('keyup', () => {
    nameAlreadyFilled = true;
    checkValidity();
});

email.addEventListener('keyup', () => {
    emailAlreadyFilled = true;
    checkValidity();
});

message.addEventListener('keyup', () => {
    messageAlreadyFilled = true;
    checkValidity();
});

quality.addEventListener('click', () => {
    qualityAlreadyFilled = true;
    checkValidity();
});

function isQualityValid() {
    let inpQuality = document.querySelectorAll('input[name="quality"]');
    if (inpQuality === '') {
        console.log('not selected');
        errQuality.innerText = 'Please select an option';
        return false;
    } else {
        errQuality.innerText = '';
        return true;
    }
}

function isNameValid() {
    if (!nameAlreadyFilled) {
        return false;
    }
    let inpName = name.value;
    if (inpName === '') {
        showError(name, 'Name cannot be blank.');
        return false;
    } else {
        showSuccess(name);
        return true;
    }
}

function isEmailValid() {
    if (!emailAlreadyFilled) {
        return false;
    }
    const re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    let inpEmail = email.value;
    if (inpEmail === '') {
        showError(email, 'E-mail address cannot be blank.');
        return false;
    } else if (!inpEmail.match(re)) {
        showError(email, `'${inpEmail}' is not a valid e-mail address.`);
        return false;
    } else {
        showSuccess(email);
        return true;
    }
}

function isMessageValid() {
    if (!messageAlreadyFilled) {
        return false;
    }
    let inpMessage = message.value.replace(/\s+/g, '');
    if (inpMessage.length < 50) {
        showError(message, 'Message should be at least 50 characters.');
        return false;
    } else {
        showSuccess(message);
        return true;
    }
}

function checkValidity() {
    btnSend.disabled = (isNameValid() && isEmailValid() && isMessageValid()) ? !(isQualityValid()) : true;
}

Kann mir hier vielleicht jemand weiterhelfen?

Vielen herzlichen Dank.

Drucke diesen Beitrag

Rainbow Zaehler
Geschrieben von: hypnotics - 14.11.2021, 09:44 - Forum: Javascript - Keine Antworten

hallo liebes JS-Forum !
ich programmiere mir mit Java Script gerade eine stoppuhr um, welche jede 10 sekunden eine weitere groessere Einheit wieder hochtakten soll. sprich : bei 100 x soll Y +1 hoch gehen. Der x wert soll jedoch nicht genullt werden, sprich er soll dann bei 200x, y wiederrum um 1 erhoehen. mein bisheriger code lautet:



timer: function() {
        if (stop === 0) {
          msecs++;
          if (msecs ===(10)&&(20)) { // hier soll der sekundenwert

                                     jede 10 schritte erhoeht werden ohne das der wert genullt wird.
            secs ++;
            msecs ++;
          }


          if (secs === 30) {
            mins +=2;
            secs ++;
          }
          if (stein === 3000) {
            mins +=33;
            stein  ++;
          }
          if (mins === 1000) {
            hrs ++;
            mins = 0;
          }
          if (hrs === 1000) {
            days +=1;
            hrs = 0;
          }
          stoppuhr.html();
        }
      },


wie wuerdet ihr das problem mit der if anweisung loesen?
Heart tausend dank vorab Heart

Drucke diesen Beitrag

  JavaScript: Countdown Zähler zur in Sekunden
Geschrieben von: laptop45276 - 14.11.2021, 08:03 - Forum: Javascript - Keine Antworten

Hallo,

ich habe einen Countdown Zähler auf der Seite.

Ich bin auf der suche, wie ich den Code ändern muss, damit er nicht anzeigt: Verbleibende Jahre, Tage, Stunden usw. Sondern, dass er nur die verbleibenden Sekunden anzeigt.
Sprich, es müsste doch eine Lösung gegeben, dass er die verbleibende Zeit (Jahre, Tage, Stunden, Minuten ...) komplett in Sekunden ausrechnet, die das als Countdown ablaufen.

Aktuell sieht er so aus:
https://count.filmbank.info/neu.html

Meine Vorstellung wäre: Die verbleibenden Sekunden bis zu Datum xy.


Der aktuelle Code sieht so aus:

<style>
/* CountDown */
#countdown {
text-align: center;
}
#countdown p {
display: inline-block;
padding: 10px;
background-color: #ff0000;
margin: 0 0 20px;
border-radius: 3px;
font-weight: bolder;
font-size: 40px;
color: black;
min-width: 3.6rem;
}
</style>

<script>
// CountDown
window.onload=function() {
// Month,Day,Year,Hour,Minute,Second
downTime('dec, 15, 2021, 22:00:00'); // *** Datum und Uhrzeit anpassen! ***
};

function downTime(countTo) {
nowd = new Date();
countTo = new Date(countTo);
difference = (countTo-nowd);
daysd=Math.floor(difference/(60*60*1000*24)*1);
yearsd = Math.floor(daysd / 365);
if (yearsd >= 1){ daysd = daysd - (yearsd * 365)}
hoursd=Math.floor((difference%(60*60*1000*24))/(60*60*1000)*1);
minsd=Math.floor(((difference%(60*60*1000*24))%(60*60*1000))/(60*1000)*1);
secsd=Math.floor((((difference%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1);
if (secsd < 0) {
yearsd = daysd = hoursd = minsd = 0;
secsd = -1;
window.clearTimeout(downTime);
// Eventuell eine Aktion ausführen ...
}
document.getElementById('yearsD').firstChild.nodeValue = yearsd;
document.getElementById('daysD').firstChild.nodeValue = daysd;
document.getElementById('hoursD').firstChild.nodeValue = hoursd;
document.getElementById('minutesD').firstChild.nodeValue = minsd;
document.getElementById('secondsD').firstChild.nodeValue = secsd;
if (secsd >= 0) {
clearTimeout(downTime.to);
downTime.to=setTimeout(function(){ downTime(countTo); },1000);
}
else {
document.getElementById('secondsD').firstChild.nodeValue = 0;
}
}
</script>

<div id="countdown">
<p id="yearsD">00</p>
<p>Jahre</p>
<p id="daysD">00</p>
<p>Tage</p>
<p id="hoursD">00</p>
<p>Stunden</p>
<p id="minutesD">00</p>
<p>Minuten</p>
<p id="secondsD">00</p>
<p>Sekunden</p>
</div>

Drucke diesen Beitrag

  Advantages of content Australia Mobile Number Database for your company
Geschrieben von: shatikhatun - 10.11.2021, 09:14 - Forum: Javascript - Keine Antworten

Content marketing is the most efficient strategy to attract, hook and acquire new and better customers.

Before we start talking about the benefits of a content marketing strategy for your business, let's put things in context a bit.

It is a fact that technology has modified many things in today's Australia Mobile Number Database society, professions, hobbies, tastes and ways in which the user knows, compares and consumes services and products.

Traditional advertising methods such as Australia Mobile Number Database billboards, radio, television, traditional mail, cold calling are excessively expensive and very difficult to measure their effectiveness, and many people find this type of advertising too annoying.

How many times have you not changed the television channel yourself while there are commercials? You have to understand one thing: we no longer sell to people; they are the ones who buy.

What is content Australia Mobile Number Database?
Content marketing is a strategy to attract, hook and acquire new customers and its basis is the curation and creation of relevant and valuable content for our audience, but what is valuable content for content marketing?

There are two forms of valuable content for the user:
Entertainment content:

One of the great uses that the internet currently has is entertainment, like radio or television, digital media have become a window that people use to find entertaining and fun content.

An example in Mexico is the Australia Mobile Number Database a vlogger (video blogger) that what he does is upload videos with monologues mainly giving it his own touch and that has been very successful, currently with more than 8 million followers on YouTube, 4.5 million followers on twitter and 12 million followers on Facebook.

It is clear that not all brands or companies have communicative qualities with this sense of "entertainment" but there are many others that do, so it is a very viable option to be able to work.

Drucke diesen Beitrag

  Mit javascript erstelltes Quiz
Geschrieben von: orucr - 09.11.2021, 18:19 - Forum: Javascript - Keine Antworten

Hallo zusammen,

ich habe von einer offiziellen Seite den HTML-Code von einem fertig erstellten Quiz bei mir gespeichert und will jetzt nur noch, dass ich im dazugehörigen Javascript-File die Anzahl der Fragen, die ich dem Anwender stellen möchte, explizit angeben kann. Meine Fragensammlung enthält z.B. 20 Fragen und ich will nur 5 davon am besten randomisiert stellen.

Weiss jemand Rat bzw. wer würde oder könnte mir helfen?

Vielen Dank schon mal und Grüße
Orucreis

Drucke diesen Beitrag

  Kontaktformular
Geschrieben von: NinaS - 08.11.2021, 23:33 - Forum: Javascript - Keine Antworten

Liebes Forum, 
Ich habe ein Kontaktformular erstellt und möchte das beim Klick auf den Button das Formular überprüft wird ob alle Pflichtangaben erfüllt sind und anschließend soll das Formular versendet werden und der Nutzer auf eine nächste Seite gelangen. Leider passiert aktuell überhaupt nichts wenn man auf den Button lockt, kann mir jemand helfen? 

Es handelt sich um folgende Seite: https://presselin.de/index.php/de/nina-kontakt

Der Code für den Button ist folgender: 
function ff_validate_submit_nextpage(element, action)
{
    if(typeof bfUseErrorAlerts != 'undefined'){
    JQuery(".bfErrorMessage").html('');
    JQuery(".bfErrorMessage").css("display","none");
    }


    error = ff_validation(0);
    if (error != '') {

        if(typeof bfUseErrorAlerts == 'undefined'){
          alert(error);
        } else {
          bfShowErrors(error);
        }
        ff_validationFocus();
    } else
        ff_submitForm();  ff_switchpage();
} // ff_validate_submit_nextpage

Drucke diesen Beitrag

  xmlrpc-node
Geschrieben von: Thomas - 08.11.2021, 10:56 - Forum: Javascript - Keine Antworten

HI zusammen 
ich könnte dringend grundlegende Hilfe gebrauchen. kann mir jemand kurz erklären wie ich den Beispiel Code der Startseite ausführe. ich möchte nur grundsätzlich verstehen wie xmlrpc funktioniert und irgendwas z.b. eine Addition mit Wartezeit zwischen Server und Client verschicken.

https://github.com/baalexander/node-xmlrpc

Schomal danke für jede Hilfe:

LG Thomas

Drucke diesen Beitrag

  Zeilenumbruch in td
Geschrieben von: matze - 28.10.2021, 10:11 - Forum: Javascript - Antworten (1)

Hallo Zusammen,
ich erzeuge die Zellen einer Tabelle dynamisch und benötige in dem Zelleninhalt an bestimmten Stellen einen Zeilenumbruch. Hab's mit br, /n /r/n probiert, geht aber alles nicht.

hier der Quelltext (Button oben links drücken):

<html>
<head>
<title>Umbruchtest</title>
<script type="text/javascript">
 
function addRow(tableID){
  let tableRef = document.getElementById('mytable-js');

    // Füge am Ende der Tabelle eine neue Zeile an
    let newRow = tableRef.insertRow(-1);

    // Erstelle in der Zeile eine Zelle am Index 0
    let newCell = newRow.insertCell(0);

    var str =  "java-text:<br />" + "\r\n" + " hier sollte Zeile2 sein";

    let newText = document.createTextNode(str);
    newCell.appendChild(newText);
}
</script>
</head>
<body>
<button onclick="addRow('mytable-js');">test</button>

<table  border=”2″  id="mytable-js">
                 
  <thead>
      <tr>
          <td>Beschreibung </td>
       </tr>
   </thead>
   <tbody>

       <tr>
          <td>html-text<br />Mit Zeilenumbruch (so soll es aussehen) </td>
       </tr>

   </tbody>
</table>

</body>
</html>

Drucke diesen Beitrag

  Textarea leeren, ohne Seite neu zu laden
Geschrieben von: ASenna - 18.10.2021, 08:10 - Forum: Javascript - Antworten (3)

Moin,

ich würde gern ein Textarea leeren, ohne dass die Seite neu geladen wird. Folgenden Code habe

Code:
document.getElementById("btn_textfeldleeren").addEventListener("click",
    function () {
        document.getElementById("mailtext").value="";
    }
);

Eingebunden ist der Button zum Auslösen des Skriptes mit:

Code:
<script type="text/javascript" src="' . $ordner_js . 'feld_leeren.js"></script>
Code:
...
<button id="btn_textfeldleeren" class="btn_duenn">Textfeld leeren</button>


Und das dürfte wohl auch das Problem sein, weil der Button-Tag immer eine neue Seite beim Server abfordert, oder?

Drucke diesen Beitrag

  Anfängerfrage: Funktion umschreiben
Geschrieben von: leof.22 - 17.10.2021, 22:40 - Forum: Javascript - Antworten (4)

Hallo zusammen,
ich bräuchte Hilfe beim Umschreiben einer Funktion...

Auf einem Raspberry nutze ich zwei 1-wire-Busse. Das Plugin "ds18b20" für node-red zeigt mir immer nur die Thermostate an, die in der Datei ''/sys/bus/w1/devices/w1_bus_master'''1'''/w1_master_slaves'' liegen. Die Sensoren in der Datei ''/sys/bus/w1/devices/w1_bus_master'''2'''/w1_master_slaves'' werden ignoriert.
Ich habe versucht die Funktion so umzuschreiben, dass beide Dateien ausgelesen, verarbeitet und deren Inhalt zusammen gefügt wird. Leider habe ich wo einen Fehler, so dass mir node-red eine leere Liste anzeigt ;-(

Weiß leider nicht woran es liegt. Habe auch versucht über readFileSync Fehler bzgl. mit synchroner/asynchroner Programmierung zu vermeiden - aber js ist alles Neuland für mich...
Kann mir hier vllt. jemand weiter helfen?

Hier die Originaldatei, in der die Funktion ''sensors'' umgeschrieben werden muss:

Code:
'use strict';

//
// Get and temperature from connected sensors.
//
// @chamerling
//

var fs = require('fs');

var W1_FILE = '/sys/bus/w1/devices/w1_bus_master1/w1_master_slaves';
var W2_FILE = '/sys/bus/w1/devices/w1_bus_master2/w1_master_slaves';

function parseHexData(data) {
  var arr = data.split(' ');

  if (arr[1].charAt(0) === 'f') {
    var x = parseInt('0xffff' + arr[1].toString() + arr[0].toString(), 16);
    return (-((~x + 1) * 0.0625));
  } else if (arr[1].charAt(0) === '0') {
    return parseInt('0x0000' + arr[1].toString() + arr[0].toString(), 16) * 0.0625;
  }
  throw new Error('Can not parse data');
}

function parseDecimalData(data) {
  var arr = data.split('\n');

  if (arr[0].indexOf('YES') > -1) {
    var output = data.match(/t=(-?(\d+))/);
    return Math.round(output[1] / 100) / 10;
  } else if (arr[0].indexOf('NO') > -1) {
    return false;
  }
  throw new Error('Can not get temperature');
}

var parsers = {
  'hex': parseHexData,
  'decimal': parseDecimalData,
  'default': parseDecimalData
};

function parseData(data, options) {
  var parser = options.parser || 'default';
  if (!parsers[parser]) {
    parser = 'default';
  }
  return parsers[parser](data);
}
module.exports.parseData = parseData;

// Get all connected sensor IDs as array
// @param callback(err, array)
function sensors(callback) {

  fs.readFile(W1_FILE, 'utf8', function(err, data) {
    if (err) {
      return callback(err);
    }

    var parts = data.split('\n');
    parts.pop();
    return callback(null, parts);
  });
}
module.exports.sensors = sensors;

// Get the temperature of a given sensor
// @param sensor : The sensor ID
// @param callback : callback (err, value)
function temperature(sensor, options, callback) {
  if (options instanceof Function) {
    callback = options;
    options = {};
  }

  fs.readFile('/sys/bus/w1/devices/' + sensor + '/w1_slave', 'utf8', function(err, data) {
    if (err) {
      return callback(err);
    }

    try {
      return callback(null, parseData(data, options));
    } catch(e) {
      return callback(new Error('Can not read temperature for sensor ' + sensor));
    }
  });
};
module.exports.temperature = temperature;

function temperatureSync(sensor, options) {
  options = options || {};
  var data = fs.readFileSync('/sys/bus/w1/devices/' + sensor + '/w1_slave', 'utf8');
  return parseData(data, options);
};
module.exports.temperatureSync = temperatureSync;


Folgendes habe ich umgeschrieben:

Code:
var W1_FILE = '/sys/bus/w1/devices/w1_bus_master1/w1_master_slaves';
var W2_FILE = '/sys/bus/w1/devices/w1_bus_master2/w1_master_slaves';
var sensorsW1;
var sensorsW2;
var sensorsAll;

[...........]

// Get all connected sensor IDs as array
// @param callback(err, array)
function sensors(callback) {
  sensorsW1 =  fs.readFileSync(W1_FILE, 'utf8', function(err, data) {
    if (err) {
      return callback(err);
    }

    var parts = data.split('\n');
    parts.pop();
    return parts;
  });

  sensorsW2 =  fs.readFileSync(W2_FILE, 'utf8', function(err, data) {
    if (err) {
      return callback(err);
    }

    var parts = data.split('\n');
    parts.pop();
    return parts;
  });
return callback(null, sensorsW1);
}
module.exports.sensors = sensors;


Danke und liebe Grüße
Leo

Drucke diesen Beitrag