使用Jquery填充输入字段不会向服务器提交数据

时间:2016-04-07 14:48:24

标签: jquery .net forms

我有一个输入字段,用户可以指定一个美元金额。此字段有效,当用户填写表单时,我可以看到他们输入的所有条目。

我想要实现的是在此输入上方放置3个按钮,建议金额为10,50和100.

使用Jquery实现这一点非常简单。这是我的代码。

HTML

<button class="btn" id="donateButton10" type="button">$10</button>
<button class="btn" id="donateButton50" type="button">$50</button>
<button class="btn" id="donateButton100" type="button">$100</button>

有问题的表单输入

 <div class="left right10 d_bold">Donation Amount<span class="required-field">*</span>
    <div class="formInput"><telerik:RadNumericTextBox runat="server" ID="Amount" Type="Currency" Width="315" Height = "48" Font-Bold = "true" Font-Size = "18pt" /></div>
</div>

实现它的javascript

<script>
    $("#donateButton10").click(function () {
        $("#ctl00_ContentPlaceHolder1_Amount").val("$10.00");
    });
    $("#donateButton50").click(function () {
        $("#ctl00_ContentPlaceHolder1_Amount").val("$50.00");
    });
    $("#donateButton100").click(function () {
        $("#ctl00_ContentPlaceHolder1_Amount").val("$100.00");
    });
</script>

这是问题所在。当用户手动填写该框并提交时,没有问题。表格有效,一切都很棒。但是当用户使用建议的数量填充输入框时,表单会抛出一个错误,表示它缺少输入。

所以我写了一些C#代码来获取输入框的值并将值写入我的调试行。

string tester = Amount.Value.ToString();
System.Diagnostics.Debug.WriteLine(tester);

当我手动输入10时,我得到以下输出

10

The thread 0xcf8 has exited with code 0 (0x0).

它完美无缺。当我实际按下10按钮并提交表单时,输出只显示退出的线程。所以我知道当用户点击按钮时,即使数字放在框中,实际值也不是。

Jquery的.val不是正确的吗?有什么我不考虑的吗?真正让我失望的部分是我设置了

value = "10.00"

在表单上提交,它有效。这就是为什么我认为.val会起作用

1 个答案:

答案 0 :(得分:0)

如果值是数字,显然你有验证。使用.val()填充$10功能会使===int

相关问题