Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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
Javascript 注册到razor@Html.HiddenFor的onchange事件_Javascript_Jquery_Asp.net Mvc 4_Razor - Fatal编程技术网

Javascript 注册到razor@Html.HiddenFor的onchange事件

Javascript 注册到razor@Html.HiddenFor的onchange事件,javascript,jquery,asp.net-mvc-4,razor,Javascript,Jquery,Asp.net Mvc 4,Razor,我正在使用asp.NETMVC4、jquery和razor。在我看来,我遇到了以下问题: @Html.HiddenFor(m => m.MyItemViewModel.id); 当jquery/javascript函数的值发生变化时,我需要调用它。因此,我曾想过使用jquery/javascript函数为HiddenFor razor标记的onchange事件创建一个函数,但我不知道这是否可行 我已经实现了以下代码,但由于未达到OnHiddenValueChanged,该代码似乎不起作用

我正在使用asp.NETMVC4、jquery和razor。在我看来,我遇到了以下问题:

@Html.HiddenFor(m => m.MyItemViewModel.id);
当jquery/javascript函数的值发生变化时,我需要调用它。因此,我曾想过使用jquery/javascript函数为HiddenFor razor标记的onchange事件创建一个函数,但我不知道这是否可行

我已经实现了以下代码,但由于未达到OnHiddenValueChanged,该代码似乎不起作用:

@Html.HiddenFor(m => m.ItemCompViewModel.id, new { onchange="OnHiddenValueChanged" });

<script>
    function OnHiddenValueChanged() {
    }
</script>
@Html.HiddenFor(m=>m.ItemCompViewModel.id,新的{onchange=“OnHiddenValueChanged”});
函数OnHiddenValueChanged(){
}
或者更好,当m.ItemCompViewModel.id(我的视图模型的项)发生更改时,如何从视图中检测,然后调用jquery/javascript函数


有什么想法吗?

看起来您正在尝试订阅
onchange
客户端函数,该函数用于在服务器上生成的值,并且仅在服务器上更改。所以这个客户端函数从未被触发是正常的。实际上,您从未使用任何javascript来更改隐藏字段的值,因此您不能期望引发此回调


如果您正在修改服务器上的值,则由服务器告诉客户机该值已更改。例如,您可以在视图模型上有一些附加属性,告诉您该值已更改(无论在您的上下文中是什么意思-因为已更改。必须始终与以前的某个状态进行比较)。然后,在客户端上,您可以将此属性序列化为javascript变量,以便客户端了解服务器上发生的更改。

看起来您正试图订阅
onchange
客户端函数,以获取服务器上生成的值,该值仅在服务器上更改。所以这个客户端函数从未被触发是正常的。实际上,您从未使用任何javascript来更改隐藏字段的值,因此您不能期望引发此回调


如果您正在修改服务器上的值,则由服务器告诉客户机该值已更改。例如,您可以在视图模型上有一些附加属性,告诉您该值已更改(无论在您的上下文中是什么意思-因为已更改。必须始终与以前的某个状态进行比较)。然后,在客户端上,您可以将此属性序列化为javascript变量,以便客户端了解服务器上发生的更改。

看起来您正试图订阅
onchange
客户端函数,以获取服务器上生成的值,该值仅在服务器上更改。所以这个客户端函数从未被触发是正常的。实际上,您从未使用任何javascript来更改隐藏字段的值,因此您不能期望引发此回调


如果您正在修改服务器上的值,则由服务器告诉客户机该值已更改。例如,您可以在视图模型上有一些附加属性,告诉您该值已更改(无论在您的上下文中是什么意思-因为已更改。必须始终与以前的某个状态进行比较)。然后,在客户端上,您可以将此属性序列化为javascript变量,以便客户端了解服务器上发生的更改。

看起来您正试图订阅
onchange
客户端函数,以获取服务器上生成的值,该值仅在服务器上更改。所以这个客户端函数从未被触发是正常的。实际上,您从未使用任何javascript来更改隐藏字段的值,因此您不能期望引发此回调


如果您正在修改服务器上的值,则由服务器告诉客户机该值已更改。例如,您可以在视图模型上有一些附加属性,告诉您该值已更改(无论在您的上下文中是什么意思-因为已更改。必须始终与以前的某个状态进行比较)。然后,在客户端上,您可以将此属性序列化为javascript变量,以便客户端知道服务器上发生的更改。

从未为
隐藏的
元素触发更改事件…?是否会更改(在客户端运行时)隐藏字段的值?!我认为这是关键:“当用户提交对元素值的更改时,会触发更改事件。”根据条件,我更改此值以区分两种模式:编辑或不编辑。因此,在编辑模式下,该值设置为>0,否则设置为0。所以我想知道是否有某种方法可以检测这个值的变化,然后调用jquery或javascript函数。这个值是如何变化的?从逻辑上讲,它是由javascript更改的,所以当现有javascript更改值时,可以调用任何需要的内容。对于
隐藏的
元素,永远不会触发更改事件…?是否会更改(在客户端的运行时)隐藏字段的值?!我认为这是关键:“当用户提交对元素值的更改时,会触发更改事件。”根据条件,我更改此值以区分两种模式:编辑或不编辑。因此,在编辑模式下,该值设置为>0,否则设置为0。所以我想知道是否有某种方法可以检测这个值的变化,然后调用jquery或javascript函数。这个值是如何变化的?从逻辑上讲,它是由javascript更改的,所以当现有javascript更改值时,可以调用任何需要的内容。对于
隐藏的
元素,永远不会触发更改事件…?是否会更改(在客户端的运行时)隐藏字段的值?!我认为这是关键:“当用户提交对元素值的更改时,会触发更改事件。”根据条件,我更改此值以区分两种模式:编辑模式和