Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何检测隐藏输入字段上的值变化_Jquery_Asp.net Mvc - Fatal编程技术网

Jquery 如何检测隐藏输入字段上的值变化

Jquery 如何检测隐藏输入字段上的值变化,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我在MVC应用程序中实现了AspNetSpellCheck,调试器告诉我textarea更改为display:none;可见性:隐藏和div通过id=“abc”和class”=“pqr”生成 由于文本区域被隐藏,我想它不会自动触发change()事件。在上述情况下触发事件的解决方案是什么?谢谢 编辑 使用AspNetSpellCheck,下面是我的代码 @{ ASPNetSpell.Razor.SpellAsYouType mySpell = new ASPNetSpell.Raz

我在MVC应用程序中实现了
AspNetSpellCheck
,调试器告诉我
textarea
更改为
display:none;可见性:隐藏
div
通过
id=“abc”
class”=“pqr”
生成

由于文本区域被隐藏,我想它不会自动触发
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>
@{
ASPNetSpell.Razor.SpellAsyOutType mySpell=新的ASPNetSpell.Razor.SpellAsyOutType();
mySpell.InstallationPath=(“/Content/ASPNetSpellInclude”);
mySpell.FieldsToSpellCheck=“TextArea1”;
}
卧床不起
@Html.Raw(mySpell.getHtml())
$(文档).ready(函数(){
$('input[type=“hidden”]”)。更改(函数(){
调试器;
警报(“hi”);
//有些事改变了=真的;
});
});
调试器生成下面的代码,隐藏文本区域和一个新的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');

试试这个..自己触发事件

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

$('#useid').val("20").change();


如果您不知道文本区域中的值何时更改,可以使用
setInterval
监视更改

例如

objTextBox = document.getElementById("TextArea1");
oldValue = objTextBox.value;
var somethingChanged = false;

function track_change()
   {
     if(objTextBox.value != oldValue)
     {
       oldValue = objTextBox.value;
       somethingChanged = true;
       alert("something has  Changed ")

});
     }

   }

setInterval(function() { track_change()}, 100);

不起作用…仅当您知道文本区域的值何时被更改时
$('input[type="hidden"]').change(function() { 
     alert('hi');
      // somethingChanged = true; 
});

$('#useid').val("20").change();
objTextBox = document.getElementById("TextArea1");
oldValue = objTextBox.value;
var somethingChanged = false;

function track_change()
   {
     if(objTextBox.value != oldValue)
     {
       oldValue = objTextBox.value;
       somethingChanged = true;
       alert("something has  Changed ")

});
     }

   }

setInterval(function() { track_change()}, 100);