0

jquery では、after() が focusout() が処理された後にのみ実行され、その前に実行されないようにしたいと考えています。コードは次のとおりです。

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
    <form action="index.php" method="post">
        <label for="lblIosDownload">Todays iOS Downloads</label>
        <input name="txtIosDownloads" type="number" > <br>

        <label for="lblAndroidDownload">Todays Android Downloads</label>
        <input name="txtAndroidDownloads" type="number" ><br>

        <label for="iosSignUps">Today's Ios Sign ups</label>
        <input name="txtIosSignUps" type="number" ><br>

        <label for="lblAndroidSignUps">Todays Android SignUps</label>
        <input name="txtAndroidDownloads" type="number" ><br>

    </form>
    <script>
    $(document).ready(function(){
        $("input[name='txtIosSignUps']").focusout(function(e){
            e.preventDefault();
            var numberOfSignups = $(this).val();
            alert(numberOfSignups);
        }).after("<div style='color:red'>Hi<div>");
    });
    </script>


</body>

4

1 に答える 1

1

イベントハンドラー内で呼び出しを移動してafter()、ページの読み込み時に発生せず、イベントが発生したときに発生するようにします

$(document).ready(function(){
    $("input[name='txtIosSignUps']").focusout(function(e){
        e.preventDefault();
        var numberOfSignups = $(this).val();
        alert(numberOfSignups);
        $(this).after("<div style='color:red'>Hi<div>");
    });
});
于 2018-02-02T11:44:37.053 に答える