jquery - 如何检测隐藏输入字段的值变化

标签 jquery asp.net-mvc

我的 MVC 应用程序中有一个 textarea,我正在其中实现 AspNetSpellCheck,调试器告诉我 textarea 更改为 显示:无; visibility:hidden; 并使用 id="abc"class"="pqr" 生成 div。 p>

<input type="hidden" value="" name="userid" id="useid" />

此外,我正在对所有文本区域/其他控件实现更改检测......

var somethingChanged = false;
$(document).ready(function() { 
    $('input').change(function() { 
       somethingChanged = true; 
    }); 
});

由于文本区域被隐藏,我想它不会自动触发 change() 事件。在上述情况下触发事件的解决方案是什么?谢谢!

编辑

使用 AspNetSpellCheck,下面是我的代码,

  @{  

  ASPNetSpell.Razor.SpellAsYouType mySpell = new ASPNetSpell.Razor.SpellAsYouType();
   mySpell.InstallationPath = ("/Content/ASPNetSpellInclude");
   mySpell.FieldsToSpellCheck = "TextArea1";
}

<textarea id="TextArea1" cols="20" rows="2">bedddly</textarea>
@Html.Raw(mySpell.getHtml())

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

$(document).ready(function () {
    $('input[type="hidden"]').change(function () {
        debugger;
        alert('hi');
        // somethingChanged = true; 
    });
});


 </script>

调试器生成以下代码,隐藏文本区域和新的 DIV 构造,

 <div tabIndex="null" class="livespell_textarea" id="TextArea1___livespell_proxy">

 <textarea id="TextArea1" style="display: none; visibility: hidden;" rows="2" cols="20">

最佳答案

对于隐藏值,您需要自己触发更改事件:

$('#hiddenInput').val('newval').trigger('change');

关于jquery - 如何检测隐藏输入字段的值变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12731647/

相关文章:

php - 如何使用 mySQL 数据库将 HTML 放入 div

javascript - 删除表行有效

asp.net-mvc - 使用 Powershell 从环境变量中读取连接字符串

asp.net-mvc - 在MVC Controller 中处置DbContext,哪种方式 "better"?

c# - 如何使用 MVC4 将 .Mobile View 放在另一个文件夹中?

javascript - 获取事件时 FullCalendar 开始和结束日期解析为 null

jquery - django - Ajax 实时搜索,我做错了什么?

javascript - jquery - 将 div 设置为不需要

javascript - 如何在使用 JQuery 满足条件时自动运行 JS 函数而不会出错?

asp.net - 实体类型 'Customer' 无法映射到表,因为它是从 'ApplicationUser' 派生的