Asp.net不从c#变量中的JavaScript函数创建值 [英] Asp.net Not geting value from javascript function in c# variable

查看:68
本文介绍了Asp.net不从c#变量中的JavaScript函数创建值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这个问题浪费了我很多时间。我已经写了一个JavaScript函数并为asp隐藏字段赋值,但是当我运行我的应用程序时,我没有在c#变量
中获取值,如果我缺少某些东西,请纠正我。
提前致谢。
这里是我的代码
javascript函数:

$ p $函数sureDelete(){
if( confirm(DELETE USER?)== true){
document.getElementById(hidden_​​yesno)。setAttribute(Value,1);
//document.getElementById('deleteYesNo').value = 1;
} else {
document.getElementById(hidden_​​yesno)。setAttribute(Value,0);
//document.getElementById('deleteYesNo').value = 0;
}
返回true;
}

我的隐藏字段和点击事件

 < asp:HiddenField ID =hidden_​​yesnorunat =server/> 
< asp:ImageButton runat =serverCssClass =pt-userDeactive helpCommandName =deleteuser
CommandArgument ='<%#Eval(user_id)%>'ImageUrl = ../TemplateS/assets/images/delete.png
Width =25pxHeight =25pxOnClick =Unnamed_ClickOnClientClick =return sureDelete()/>

以下是c#代码

  protected void Unnamed_Click(object sender,ImageClickEventArgs e){
string flag = hidden_​​yesno.Value.ToString();
//这里我得到的值是:
if(flag ==1){
//做某事
} else {
/ / do nothing
}
}


解决方案

您正在使用 asp:HiddenFeild ,其中 ID asp.net 根据 ContentPlaceHolder ,所以它不会被javascript / jquery找到。



ID 隐藏域,或者您可以设置 ClientIDMode =static这将确保 ID 没有改变。

 < asp:HiddenField ID =hidden_​​yesnorunat =server ClientIDMode =Static/> 


this problem has wasted much of my time. I have written a javascript function and assigned value to asp hidden field but when i run my application i am not getting the value in c# variable please correct me if i am missing something. thanks in advance. here is my code javascript function:

function sureDelete() {
            if (confirm("DELETE USER?") == true) {              
                document.getElementById("hidden_yesno").setAttribute("Value", "1");
              //document.getElementById('deleteYesNo').value = 1;
            } else {                         
                document.getElementById("hidden_yesno").setAttribute("Value", "0");
               //document.getElementById('deleteYesNo').value = 0;
            }
            return true;
        }

my hidden field and click event

<asp:HiddenField ID="hidden_yesno" runat="server" />
<asp:ImageButton  runat="server" CssClass="pt-userDeactive help" CommandName="deleteuser"
CommandArgument='<%# Eval("user_id") %>' ImageUrl ="../TemplateS/assets/images/delete.png"
Width="25px" Height="25px" OnClick="Unnamed_Click" OnClientClick="return sureDelete()"/>

and following is the c# code

 protected void Unnamed_Click(object sender, ImageClickEventArgs e) {
            string flag = hidden_yesno.Value.ToString();
              //here i am getting the value as: ""            
            if (flag == "1") {
               //do something
            } else {
                //do nothing
            }          
        }

解决方案

You are using asp:HiddenFeild whose ID is changed by asp.net according to ContentPlaceHolder so it is not found by javascript/jquery.

Either you need exact ID of hidden feild or you can set ClientIDMode="static" which will make sure that ID is not changed.

<asp:HiddenField ID="hidden_yesno" runat="server" ClientIDMode="Static" />

这篇关于Asp.net不从c#变量中的JavaScript函数创建值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆