我的 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/