0

私は参照用に一意の番号を生成するシステムを持っています..ここにjqueryの私の関数があります:

        function random() {
            return Math.floor(Math.random() * 100000000);
        }

        function generateRandomNumber() {
            $("#GenerateCode").val(random());
        }

        window.onload = function () {
            generateRandomNumber();
        }

ここに私のマークアップ(asp)があります:

       <div id="step3" class="formwiz">
       <h4>Step 3: Reference Number</h4>
            <br clear="all" />
            <p>  
             <label>Reference Number</label>
             <span class="field">
             <input type="text" id="GenerateCode" name="GenerateCode" class="smallinput" disabled="disabled" />&nbsp;<small style="color: red">Please write the numbers at the back of your check</small>
             </span>
             </p>
      </div>

この関数は html (入力) で正常に動作します...しかし、入力から ast テキストボックスに移行すると、数値がテキストボックスに投稿されません... getelementbyid を使用する必要がありますか?

助けてください...

4

2 に答える 2

0

私はあなたが実際に従来の ASP ではなく ASP.NET を使用していて、テキスト ボックスを次のように変更しようとしていると思います。

<asp:TextBox id="GenerateCode" runat="server" CssClass="smallinput" Enabled="False" />

このような場合、テキストボックスがコントロール、プレースホルダーなどの一部である場合、生成された ID は指定したものとは異なる場合があります。

同じ ID を確実に使用ClientIDModeし、静的に設定するには:

<asp:TextBox id="GenerateCode" runat="server" ClientIDMode="Static" CssClass="smallinput" Enabled="False" />

これで、jQuery コードは再び正常に動作するはずです。

于 2013-05-30T10:23:00.807 に答える