ASP.Net MVC Javascript键盘不工作

ASP.Net MVC Javascript键盘不工作,javascript,jquery,asp.net,asp.net-mvc,Javascript,Jquery,Asp.net,Asp.net Mvc,我的虚拟键盘正在工作,但当我在窗体中添加按钮而不是Div时,它停止了工作 这是我的javascript代码: $(document).ready(function () { function input(e) { //var u = document.rateformular;// duplicated with f and not used var f = document.rateformular;

我的虚拟键盘正在工作,但当我在窗体中添加按钮而不是Div时,它停止了工作

这是我的javascript代码:

 $(document).ready(function () {

        function input(e) {
            //var u = document.rateformular;// duplicated with f and not used
            var f = document.rateformular;
            var b = f.elements["ratezeichen"];
            var zeichen = b.value;
            zeichen.value = zeichen.value + e.value



        }
<div class="cities">
       <input id="btn1" type="button" value="a"  class="btn btn-default" onclick="input(this);" />
   </div>
该按钮有以下内容:

 $(document).ready(function () {

        function input(e) {
            //var u = document.rateformular;// duplicated with f and not used
            var f = document.rateformular;
            var b = f.elements["ratezeichen"];
            var zeichen = b.value;
            zeichen.value = zeichen.value + e.value



        }
<div class="cities">
       <input id="btn1" type="button" value="a"  class="btn btn-default" onclick="input(this);" />
   </div>

您的输入函数必须在全局范围内声明

  • 外部
    $(文档).ready(函数(){…

  • 直接连接到全局对象
    window.input=函数(e){…

    • 这就是我为解决问题所做的

      function input(e) {
      
              var f = document.rateformular;
              var b = f.elements["ratezeichen"];
              if (b.value == 0) {
                  b.value = b.value + e.value;
              }
              else {
      
      
      
              }
      
      主要的问题是在范围内,然后我不得不在代码中做一些更改。 谢谢你


      if cicle是为了防止用户输入2个字母,他们只能输入1个字母,这是文本框的最大长度,它是我的应用程序的一部分。

      将函数
      input
      移动到文档就绪处理程序之外。该函数应在全局范围内,用作内联事件处理程序
      onclick=“input(this);”
      可以很好地工作,问题是它没有在全局范围中定义。事件处理程序的第一个参数应该是事件对象,而不是dom元素。使用e.target或this关键字更好。事件处理程序的第一个参数应该是事件对象,而不是dom元素。这在使用jquery事件绑定或vanilla js
      addEventListener时是正确的de>methode值如下所示undefined@PauloMartins,坚持到
      onclick=“输入(此);”