Ich habe ein sehr kompliziertes Skript, konnte jedoch die Änderungen in einer einfachen jsfiddle replizieren.

Hier ist der Code vor Ort:

HTML

<input type="text" id="rangeStart" value="updateMe" /><br/>
<input type="text" class="start-date" value="different" /><br/>
<input type="text" class="start-date" value="data" /><br/>
<input type="button" id="button" value="Press Me" />

Javascript

jQuery('#rangeStart').change(function() {
    var value = jQuery(this).val();
    jQuery('.start-date').each(function () {
        jQuery(this).val(value); 
    });
});;

jQuery('#button').click(function () {
    alert("pressed");
    jQuery('rangeStart').val('new value');
});

Durch Klicken auf die Schaltfläche wird nicht einmal die Warnmeldung ausgelöst! Ich bin mir sicher, dass mir etwas Einfaches fehlt, aber ich habe es eine Stunde lang angestarrt und kann es nicht herausfinden, also verschiebe ich mich auf xkcd.com/627 und um Hilfe bitten.

Vielen Dank!

-2
Bing 28 Nov. 2013 im 08:29

3 Antworten

Beste Antwort

Probieren Sie dies aus: - http://jsfiddle.net/adiioo7/Ehes7/4/

Sie haben vergessen, die Bibliothek jQuery einzuschließen.

3
Aditya Singh 28 Nov. 2013 im 04:30

Versuchen Sie Folgendes: jquery wurde nicht in jsfiddle geladen. Eine bessere Verwendung von "jeder Funktion" kann den Code lesbarer machen (Argumente verwenden). http://jsfiddle.net/UY3hE/1/

$ ('# rangeStart'). change (function () {

    var value = $(this).val();
    $('.start-date').each(function (i,itm) {
        $(itm).val(value); 
    });
});

$('#button').click(function () {
    alert("pressed");
    $('rangeStart').val('new value');
});
0
Bradia 28 Nov. 2013 im 04:56

Versuchen Sie es noch einmal mit ein wenig Abwechslung:

$(function(){
  $('#rangeStart').change(function() {
    var value = $(this).val();
    $('.start-date').each(function () {
        $(this).val(value); 
    });
  });;

  $('#button').click(function () {
    alert("pressed");
    $('#rangeStart').val('new value');
  });

});
0
Ringo 28 Nov. 2013 im 04:36