【问题标题】:Unable to delete the data from grid view even the jquery returns true即使 jquery 返回 true,也无法从网格视图中删除数据
【发布时间】:2012-02-09 09:23:50
【问题描述】:

我使用以下脚本来检查是否从网格视图中选择了一个项目,这工作正常。当我显示确认框并且用户选择确定时,如果不是False,我将返回true。但是在Ok 上,我无法从网格视图中删除所选项目,任何人都可以帮忙。

<script type="text/javascript">
    $(document).ready(function () {
        $("#ContentPlaceHolder1_btnDelete").click(function () {
            var gv = document.getElementById("<%=grdPayroll.ClientID%>");
            var rbs = gv.getElementsByTagName("input");
            var flag = 0;
            for (var i = 0; i < rbs.length; i++) {
                if (rbs[i].type == "checkbox") {
                    if (rbs[i].checked) {
                        flag = 1;
                        break;
                    }
                }
            }
            if (flag == 0) {
                jAlert('Select One', 'Alert Dialog');
            }
            else {
                $("#ContentPlaceHolder1_btnDelete").click(function () {
                    var gv = document.getElementById("<%=grdPayroll.ClientID%>");
                    var rbs = gv.getElementsByTagName("input");
                    var flag = 0;
                    for (var i = 0; i < rbs.length; i++) {
                        if (rbs[i].type == "checkbox") {
                            if (rbs[i].checked) {
                                flag = 1;
                                break;
                            }
                        }
                    }
                    if (flag == 0) {
                        jAlert('Select One', 'Alert Dialog');
                        //return false;
                    }
                    else {
                        jConfirm('Can you confirm this?', 'Confirmation Dialog', function (r) {
                            if (r == true)
                                return true;
                            else
                                return false;
                        });
                        //return false;
                    }
                });
            }
            return false;
        });
    });
</script>

按钮下的示例代码

protected void btnDelete_Click(object sender, EventArgs e)
{
    int EmpID = 0;
    int chkRows = 0;
    string strWageID = string.Empty;
    int Payperiodnumber = 0;
    int PayYear = 0;
    DateTime dtPaymentdate;
    string strFedTaxID = string.Empty;
    strFedTaxID = ddlFedTaxID.SelectedValue;

    if (rdSimul.Checked == true)
    {
    }
 }

【问题讨论】:

  • 我可以知道为什么它被否决

标签: jquery asp.net visual-studio-2010 gridview


【解决方案1】:

您确定&lt;%=grdPayroll.ClientID%&gt; 真的是您要删除的对象的名称吗?是否已通过 firebug 检查页面并查看页面上是否存在此元素?另外你为什么不使用 $('#something') 来获取元素而不是 document.getElementbyID ?

【讨论】:

  • 是的,对象的名字和我给的一样
  • 我怎样才能$('#something') 用这个代替document.getElementbyID
  • 与您使用 $("#ContentPlaceHolder1_btnDelete") 的方式相同
  • 你的意思是document.getElementById("#ContentPlaceHolder1_grdPayroll");
  • 我认为你应该看看来自 jQuery 的 Selectory。说真的,如果您对此一无所知,您提供的代码是不可能由您完成的。
【解决方案2】:

您是否包含从网格中删除选定行的语句?抱歉,如果这听起来很愚蠢。

【讨论】:

    【解决方案3】:

    从 DOM 中移除元素?

    $('#<%=grdPayroll.ClientID%>').remove();
    

    【讨论】:

    • 不从 DOM 中删除元素我已经在我的代码中为按钮单击编写了单独的代码
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多