Hallo,
Ich bin mir jetzt nicht zu 100% sicher, aber ich glaube, damit liest die nicht value aus sondern den index der option. Das ist aktuell kein Problem, erst, wenn eine Option dazu kommt. Testen kannst du das indem du value mal änderst. Wenn ich damit falsch liege, ist es natürlich die einfachere Lösung ;)
hab es mal so abgeändert, dann bin ich auf der sicheren Seite?
<label for="ansprechpartner">Ansprechpartner</label>
<select name="ansprechpartner" id="ansprechpartner" required>
<option value="">-- Bitte wählen --</option>
<option value="1">Test Eintrag 1</option>
<option value="2">Test Eintrag 2</option>
<option value="3">Test Eintrag 3</option>
<option value="4">Test Eintrag 4</option>
<option value="ABC">Benutzerdefinierte Eingabe</option>
</select>
$(document).ready(function(){
$('select#ansprechpartner').change(function(){
if($(this).val() == 'ABC'){
$('div#benutzerdefinierte').show();
}
if($(this).val() != 'ABC'){
$('div#benutzerdefinierte').hide();
}
});
});