C# 数字不能放在整数中。”); 系统诊断跟踪写入线(例如消息); } }
下面是更新值的javascript:C# 数字不能放在整数中。”); 系统诊断跟踪写入线(例如消息); } },c#,javascript,asp.net,C#,Javascript,Asp.net,下面是更新值的javascript: function update() { var tbl = document.getElementById('MainContent_tbl1'); var rows = tbl.getElementsByTagName('tr'); var routes = document.getElementsByName("route"); var mod;
function update() {
var tbl = document.getElementById('MainContent_tbl1');
var rows = tbl.getElementsByTagName('tr');
var routes = document.getElementsByName("route");
var mod;
//make call to c# func to have the database updated
for (var i = 1; i < rows.length; i++) {
mod = document.getElementById("rte" + i);
//for testing
if (i == 1 || i == 10) {
alert("rte" + i + ", " + mod.value);
}
//change value
mod.value = routes[i - 1].value;
//for testing
if (i == 1 || i == 10) {
alert("rte" + i + ", " + mod.value);
}
}
函数更新(){
var tbl=document.getElementById('MainContent_tbl1');
var rows=tbl.getElementsByTagName('tr');
var routes=document.getElementsByName(“路由”);
var-mod;
//调用c#func更新数据库
对于(变量i=1;i
警报显示正确的值,但源中的值本身从未更改。非常感谢所有帮助,谢谢
我添加了if(!Page.IsPostBack)到page_init,所以现在值不会变回,但它返回为null。这将帮助您设置值。这是在代码中动态添加和设置值时的问题。您需要为每个页面加载重新设置值。我不知道解决方案,但我有解决方法当情况需要的时候,你可以这样做 动态添加HTMLHiddenInput元素并检查页面源代码时,如下所示:-
检查隐藏字段的名称和id以及所有asp.net继承人权限和所有
现在,在你的代码后面的按钮点击功能中,你需要像这样阅读它
string sTest=Request.Form[“ctl00$MainContent$Test”];
您必须读取输入字段的name参数
在javascript中设置值时,使用以下命令:-
document.getElementById(“MainContent\u Test”).value=“5”
您可以使用输入字段的id参数
此外,如果(!IsPostBack)在页面加载中,您需要将代码包装在其中,这样值就不会被重置。一旦您在按钮单击中读取完值,您将再次需要动态添加隐藏字段,就像您在页面加载中所做的那样
这是一个肮脏的把戏。希望它对您有效,一个更好的解决方案将永远对您有所帮助。您确定在引发单击事件的HTTP POST之前调用update吗?是的,确实如此,我还尝试在单击按钮之前运行update,但这并没有改变任何事情。我已经在javascript中使用了.value lowercase,即更改后,当服务器访问它时,它将恢复为旧值。
function update() {
var tbl = document.getElementById('MainContent_tbl1');
var rows = tbl.getElementsByTagName('tr');
var routes = document.getElementsByName("route");
var mod;
//make call to c# func to have the database updated
for (var i = 1; i < rows.length; i++) {
mod = document.getElementById("rte" + i);
//for testing
if (i == 1 || i == 10) {
alert("rte" + i + ", " + mod.value);
}
//change value
mod.value = routes[i - 1].value;
//for testing
if (i == 1 || i == 10) {
alert("rte" + i + ", " + mod.value);
}
}