2

javascript/aspで2つのテキストボックス値を追加して3番目に表示するにはどうすればよいですか? 私のコードは以下です

 function fill() {
        var txt8 = document.getElementById("TextBox8").value;
        var txt9 = document.getElementById("TextBox9").value;
        document.getElementById("TextBox10").value = txt8 + txt9;


    }

TextBox8 と TextBox9 の両方に onchange="fill" があります

4

5 に答える 5

2

関数を呼び出す必要がありますonchange="fill()"()

于 2012-10-10T21:19:52.820 に答える
1
    function Sum() {
        var text1 = document.getElementById('<%= TextBox1.ClientID %>');
        var text2 = document.getElementById('<%= TextBox2.ClientID %>');
        if (text1.value.length == 0 || text2.value.length == 0) {
            text1.value = 0;
            text2.value = 0;
        }

        var x = parseFloat(text1.value);
        var y = parseFloat(text2.value);          

        document.getElementById('<%= TextBox3.ClientID %>').value = x + y;
    }




<table>
    <tr>
        <td style="width: 100px">
            TextBox1</td>
        <td>
            <asp:TextBox ID="TextBox1" runat="server" onkeyup="Sum()"></asp:TextBox>
        </td>
    </tr>
    <tr>
        <td>
            TextBox2</td>
        <td>
            <asp:TextBox ID="TextBox2" runat="server" onkeyup="Sum()"></asp:TextBox>
        </td>
    </tr>
    <tr>
        <td>
            TextBox3</td>
        <td>
            <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;</td>
        <td>
            &nbsp;</td>
    </tr>
    <tr>
        <td>
            &nbsp;</td>
        <td>
            <asp:Button ID="Button1" runat="server" Text="Show" Width="80px" OnClientClick="Sum()" />
        </td>
    </tr>
</table>
于 2012-11-29T12:53:27.160 に答える
1

なぜjQueryを使わないのですか?以下にサンプルを示します。

function fill(){
var total=Number($('#TextBox9').val()) + Number($('#TextBox9').val());
$('#TextBox10').val(total);
}
于 2012-10-10T21:56:08.443 に答える
1

関数呼び出しの後に一連の括弧がありますか? JavaScript では、関数呼び出しの後に括弧を付けないと、変数を参照していると見なされます。また、将来、JavaScript コードのデバッグに苦労している場合は、ブラウザーの JavaScript コンソールを開いて、何が起こっているのか、どのようなエラーがスローされているのか (もしあれば) を確認してください。

<input type="text" id="TextBox8" onchange="fill()" />

<input type="text" id="TextBox9" onchange="fill()" />
于 2012-10-10T21:25:32.340 に答える
0

文字列を整数に変換する必要があります。値は常に文字列を返します。jsfiddle

 <input onchange="fill()"  id=TextBox8 />
<input  onchange="fill()"  id=TextBox9 />
<input  id=TextBox10 /> 
<script>

    function fill() {
        var txt8 = document.getElementById("TextBox8").value-0;
        var txt9 = document.getElementById("TextBox9").value-0;
        document.getElementById("TextBox10").value = txt8 + txt9;


    }
</script>

</p>

于 2012-10-10T21:21:57.523 に答える