【问题标题】:input onchange event not working输入 onchange 事件不起作用
【发布时间】:2012-05-11 14:52:40
【问题描述】:

我有一个日期选择器脚本,它将所选日期放入我的输入文本中:

<script type="text/javascript" language="javascript">
$(function () {
    $(".datepicker").datepicker({ onSelect: function (dateText, inst) { },
        altField: ".alternate"
    });

});

这是我的表格:

<form action="/" >

   <input type="text" class="alternate" onchange='this.form.submit()' readonly="readonly" />

</form> 

我想在每次输入文本的值发生变化时自动提交表单。每次我在日期选择器中选择一个新日期时,输入文本都会发生变化,但表单没有提交……我该怎么做?

【问题讨论】:

    标签: html forms submit


    【解决方案1】:

    Call Javascript onchange event by programatically changing textbox value

    为什么不直接使用 datepicker 中的 onSelect 事件来提交表单?

    类似:

    $(function () {
        $(".datepicker").datepicker({ onSelect: function (dateText, inst) { 
               $("#textboxID").val(dateText);
               $("FORM").submit();
            },
            altField: ".alternate"
        });
    });
    

    【讨论】:

    • 我该怎么做...我也想过,但我没有这样做,因为我不知道如何在 onSelect 事件中调用表单并使其提交
    • 查看我添加的示例。如果页面上有多个表单,则需要为表单使用正确的选择器。
    • $("FORM").submit(); FORM是表格的名称吗?如何命名表单...此外,.submit() 没有出现在智能感知中
    • "FORM" 是一个标签名称的 jquery 选择器。您还可以使用 ID 选择器、类选择器等:api.jquery.com/element-selector。如果您使用的是 jQuery UI,那么您肯定有 jquery,所以我不会担心它不会在智能感知中显示。
    • 我怎样才能保留选择的日期???因为每次表单提交时,选择的日期都会恢复默认...
    【解决方案2】:
        $("#EleId").click({
             alert("Called");
        });
    
    <form action="/" >
    
       <input type="text" id="EleId" class="alternate" onchange='this.form.submit()' />
    
    </form> 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-08
      • 1970-01-01
      相关资源
      最近更新 更多