【问题标题】:how to get text to be changed in one textbox in asp.net when text changed in other textbox当文本在其他文本框中更改时,如何在asp.net中的一个文本框中更改文本
【发布时间】:2013-07-06 06:13:33
【问题描述】:

我想在一个文本框中改变一些文本就改变另一个文本框。我知道可以使用ontextchanged 事件来完成。但我的要求是,例如。让我们举一个将米转换为公里的例子。

  1. 当我在文本框中键入 1000 而不离开该文本框时,我需要在 other 中将值设为 1 KM。
  2. 现在,我将 1000m 更改为 3000m(没有触发 ontextchanged 事件),我应该在另一个文本框中看到 3 KM。

简而言之,我不希望文本框被回发。我知道这可以在 Windows 项目中完成,但如何在 asp.net(基于 Web)中完成。有 JavaScript 或 jQuery 吗?

请帮忙。提前致谢。

【问题讨论】:

  • 您可以对文本框使用 javascript onchange 事件
  • @Paritosh:你能给我一个相同的链接吗?

标签: c# asp.net


【解决方案1】:

希望对你有帮助

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <script src="/js/jquery-1.7.2.min.js" type="text/javascript"></script>

    <script language="javascript" type="text/javascript">

      function Convert() {
          var meters = jQuery("#txtMeters").val();
          var kilometers = meters / 1000;
          jQuery("#txtKilometers").val(kilometers);
      }

    </script>

<title>Solution</title>
</head>

<body>
    <form id="form1" runat="server">
    <div>
    Meters
    <asp:TextBox ID="txtMeters" ClientIDMode="Static" runat="server" onkeyup="javascript:Convert()">
    </asp:TextBox>
    /
    <asp:TextBox ID="txtKilometers" ClientIDMode="Static" runat="server">
    </asp:TextBox>Kilometers
    </div>
    </form>
</body>

</html>

【讨论】:

  • 同文本框的textchanged事件。我必须从 txtMeters 文本框中转移控件。然后它给了我输出
  • 好的,所以你想立即...检查编辑现在它会工作:)
  • 它现在可以工作,但它已经落后了。即我得到的 1000 个答案是 0.1
  • 我修好了。而不是将其除以 1000 除以 100。;)
  • 不,不要那样做,检查我的编辑...使用 onkeyup 会起作用.. 问题就在那里,因为事件在按下键后立即触发,而文本框仍然存在没有任何价值。
【解决方案2】:

http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onkeypress

<script>
  function myFunction()
  {
    alert("You pressed a key inside the input field");
    // get value of textbox1, sdo the calculation
    // set value of textbox2
    var x = document.getElementById('textbox1').value;//get integer part of value
    document.getElementById('textbox2').value = x/1000 + 'km';
  }
</script>
<input type="text" id="textbox1" onkeypress="myFunction()">
<input type="text" id="textbox2">

【讨论】:

    【解决方案3】:

    调用(最好将其绑定到 textBox 事件)JavaScript/jQuery 函数以从第一个文本框中的文本转换并放入第二个文本框。

    如何绑定事件?看这里..

    Jquery text change event

    http://api.jquery.com/change/

    【讨论】:

      【解决方案4】:

      试试这个 jquery 解决方案

      添加 jquery 库

          <asp:TextBox runat="server" ID="TextBox1" runat="server"/>
          <asp:TextBox  runat="server" ID="TextBox2" onkeyup="callFunction()" runat="server"/>
          <script type="text/javascript">
              function callFunction() {
                  var TextBox2_val = $('#<%= TextBox2.ClientID %>').val();
                  $('#<%= TextBox1.ClientID %>').val((parseFloat(TextBox2_val) / 1000).toString());
              }
          </script>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-12
        • 1970-01-01
        • 2012-11-22
        • 2021-12-26
        • 1970-01-01
        相关资源
        最近更新 更多