2017-10-11 3 views
0

Vielleicht gibt es keine Lösung für diese.Matching 2 spezifische Regex in Jquery

Ich habe eine Tabelle, die Eingänge in der Zelle hat, es ist dynamisch und kann eine beliebige Anzahl von Zeilen haben. Ich verwende Regex, um Änderungen an einem Feld aufzunehmen: pricechange123, pricechange000, pricechange999 usw. Sobald ein Benutzer einen Wert eingibt, muss er ihn mit seinem zugehörigen Wert in der Spalte "rates" referenzieren: rate123, rate000 und rate999. Ab sofort würde $("input[id^='rate']") alle Preise abholen.

Gibt es eine Möglichkeit zu sagen, welche ID abgeholt wurde?

Antwort

1

In diesem Eingabehandler ist es nur this.id.

$("input[id^='pricechange']").on("input", function() { 
 
    console.log(this.id); 
 

 
    // extract the numeric part: 
 
    var myIdNumber = this.id.replace('pricechange', ''); 
 
    // so you can use it on the #rate123 element similarly: 
 
    if (this.value != $('#rate' + myIdNumber).value) { 
 
    // ... 
 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input id="pricechange1"> 
 
<input id="pricechange2">

+0

Ich bin stumm. Vielen Dank! Ich werde akzeptieren, wenn es mich lässt! :) –

+0

Überhaupt nicht, manchmal sind es die einfachsten Probleme, die am schwersten zu finden sind. (Eine mögliche Quelle der Verwirrung ist, dass Sie hier keine regex verwenden, nur das jQuery-Attribut - startet mit Selektor - wenn Sie nach Regex-Antworten suchen, die Sie in die falsche Richtung geführt hätten) –