C# 文本框上的jquery val()不';t设置DOM值属性

C# 文本框上的jquery val()不';t设置DOM值属性,c#,javascript,jquery,.net,asp.net,C#,Javascript,Jquery,.net,Asp.net,我面临一个奇怪的问题,不确定是jquery还是我的场景组合导致了这一问题。当我使用jquery设置textbox值时,textbox显示正确的值,但是html中的value属性仍然是它加载时使用的属性。为什么它显示的文本与DOM中的不同 我有一个动态生成的表单,它添加了两个数字,并使用jquery将添加内容显示到第三个文本框中,如下所示。 您可以使用下面的代码进行复制 设计器文件 <asp:Content ID="Content2" ContentPlaceHolderID="MainCo

我面临一个奇怪的问题,不确定是jquery还是我的场景组合导致了这一问题。当我使用jquery设置textbox值时,textbox显示正确的值,但是html中的value属性仍然是它加载时使用的属性。为什么它显示的文本与DOM中的不同

我有一个动态生成的表单,它添加了两个数字,并使用jquery将添加内容显示到第三个文本框中,如下所示。 您可以使用下面的代码进行复制

设计器文件

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<script src="../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function () {

        $(".addToTotal").blur(function () {
            UpdateTotal();
        });
    });

    function UpdateTotal() {

        var add = 0;
        $(".addToTotal").each(function () {
            add += Number($(this).val());
        });
        $(".txtTotalPoints").val(add.toFixed(2));
        $("#para").text("Sum of all textboxes is : " + add);
    }

</script>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
<input id="addAll" type="button" value="Sum all Textboxes" /><br />
<p id="para"> </p>
<br />
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />

这就是应该发生的事情:dom是动态的,但是当您查看页面源代码时,浏览器将显示原始html。(当然,这取决于您使用的浏览器,每个浏览器都不同)

您也可以使用

$(selector).attr("value","Hello World.");

铬和FF都会发生这种情况。我还没有试过。一般来说,我对javascript没有太多的了解,但我认为jquery也应该更新value=”“属性。我遗漏了什么吗?我应该如何更新dom值?更改后的值保存在内存中,并在提交表单(和/或使用javascript检查时返回)时提交到服务器-浏览器只显示从服务器加载的原始值,但无需担心。如果您希望在查看源代码时该值以不同的方式显示,则需要从服务器发送不同的值(但您不需要这样做,它没有特别的好处)酷,这意味着这是默认行为,对吗?但是,当我在回发时从代码隐藏中获取textbox文本值时,它仍然显示原始值,而不是更新后的值。所以我认为浏览器应该更新它。无论如何,谢谢你的帮助,我会找出我原来项目中代码背后的问题所在
$(selector).attr("value","Hello World.");