Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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
C# 使用html帮助器在创建的TextBox元素中添加新的html属性_C#_Javascript_Asp.net Mvc - Fatal编程技术网

C# 使用html帮助器在创建的TextBox元素中添加新的html属性

C# 使用html帮助器在创建的TextBox元素中添加新的html属性,c#,javascript,asp.net-mvc,C#,Javascript,Asp.net Mvc,我正在使用ASP.NET MVC和C#开发一个Web应用程序。我使用Html.Helper(字符串、对象、对象)创建了TextBox元素。现在我的问题是,是否可以在已经创建的TextBox元素中添加一个新的html属性,比如javascript事件元素 因为我在使用onchange事件时遇到问题。请看下面的代码 <% foreach(var md in MD){%> <tr> <td> <div><%= Html.TextBox("tt"+m

我正在使用ASP.NET MVC和C#开发一个Web应用程序。我使用Html.Helper(字符串、对象、对象)创建了TextBox元素。现在我的问题是,是否可以在已经创建的TextBox元素中添加一个新的html属性,比如javascript事件元素

因为我在使用onchange事件时遇到问题。请看下面的代码

<% foreach(var md in MD){%>
<tr>
<td>
<div><%= Html.TextBox("tt"+md.id, md.id, new { onchange="changenow('dd"+md.id+"')"})%>
</div>
</td>
</tr>
<%}%>

我的
changenow
javascript函数将使用ajax实现更新数据库。现在,每次加载页面时,
changenow
都会执行,因此每次加载页面时都会增加开销。因此,我假设在创建文本框时,
changenow
函数不会执行

我应该如何做才能在加载页面时不执行
changenow
功能

请告知


非常感谢。

您可以随时使用jquery

$(document).ready(function(){
  $('input[name=tt]').change(function(){
    changenow(this);
  });
});

function changenow(elem){
 $(elem).val(); //this will get you the value
  $(elem).attr('name'); // will get the name attribute
  $(elem).attr('id'); // will get the id attribute
}

您始终可以使用jquery

$(document).ready(function(){
  $('input[name=tt]').change(function(){
    changenow(this);
  });
});

function changenow(elem){
 $(elem).val(); //this will get you the value
  $(elem).attr('name'); // will get the name attribute
  $(elem).attr('id'); // will get the id attribute
}

您可以使用jquery编写js脚本,使用jquery,将事件添加到元素中非常简单

您可以使用jquery编写js脚本,使用jquery,将事件添加到元素中非常简单

如果您想使用侦听器将属性添加到现有元素中,您可以执行以下操作:

<... onchange="this.property='some value'" ...>


不需要庞大的脚本。

如果要使用侦听器向现有元素添加属性,只需执行以下操作:

<... onchange="this.property='some value'" ...>


不需要庞大的脚本。

是否可以使用通配符访问具有“dd*”id的所有元素?因为我的textbos是id1。。idn@krakat-您已经在服务器上添加了一个处理程序,它甚至不需要ID即可完成此操作。为什么要删除它,然后在另一个地方编程?然后您有两个地方来维护代码(并保持您的id同步,等等)。是否可以使用通配符访问具有“dd*”id的所有元素?因为我的textbos是id1。。idn@krakat-您已经在服务器上添加了一个处理程序,它甚至不需要ID即可完成此操作。为什么要删除它,然后在另一个地方编程?然后你有两个地方来维护代码(并保持你的id同步,等等)。去掉所有的$symbol,只使用DOM属性:elem.value、elem.name和elem.id。要查看所有这些“$”符号的成本(最多慢100倍),请尝试:。除去所有这些$符号,只需使用DOM属性:elem.value、elem.name和elem.id。要查看所有这些“$”符号的成本(最多慢100倍),请尝试:。