【问题标题】:document.getElementById().value gets stuck in javascriptdocument.getElementById().value 卡在 javascript 中
【发布时间】:2014-05-22 06:45:59
【问题描述】:

我有一个图像,它调用 javascript 中的一个函数,该函数调用另一个函数以在 javascript 中显示一个表单,如下所示:

<img alt="" width="16px" onclick="clickEdit('## DataItem.GetMember("id").Value ##', '## DataItem.GetMember("c2").Value ##','##DataItem.ClientId##')" 
                    id="imgEditGrid" style="border-width: 0px;cursor: pointer; cursor: hand;" src="SiteImages/insert.png" title="Introduir FacturaEmitidaID" />

这是第一个 javascript 函数:

  function clickEdit(id, id2, rowid) {
        alert(rowid);
        document.getElementById('ctl00_MainContent_rowId').value = rowId;
        alert("hello2????");
        document.getElementById('ctl00_MainContent_idFactura1').value = id1;
        alert("hello3????");
        showFormInsert(id, id2);
        alert("wtf????");
  }

我的问题很简单;只调用了第一个警报,这意味着它卡在第一个 document.getelementbyID() 中。以前我在没有这两个documents.getelement的情况下拥有相同的功能并且它工作得很好,所以我想它与它有关。

我检查了几次,id1、id2 和 rowid 具有正确的值。在这里你可以找到它们:

<asp:HiddenField ID="idFactura1" runat="server" />
<asp:HiddenField ID="rowId" runat="server" />

不知道还能做什么。

【问题讨论】:

  • 检查 id 是否在 html 代码中没有重复。就像 'ctl00_MainContent_rowId' 应该是整个文档中的一个。
  • rowid的值是多少??
  • Javascript 区分大小写。你使用rowidrowId
  • 您可以创建一个JSFiddle 以便我们可以重现该问题吗?缺少一些信息,例如您如何声明 ctl00_MainContent_rowId。
  • 已经解决了;无论哪种方式 ctl00_MainContent_rowId 这不是我声明的,它是一种简单的自动化方式来进行引用和启动事件。谢谢。

标签: javascript jquery asp.net


【解决方案1】:

把你的函数改成这样:

function clickEdit(id, id2, rowid) {
    alert(rowid);
    document.getElementById('ctl00_MainContent_rowId').value = rowid;  //Not rowId
    alert("hello2????");
    document.getElementById('ctl00_MainContent_idFactura1').value = id; //Not id1
    alert("hello3????");
    showFormInsert(id, id2);
    alert("wtf????");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-17
    • 2017-09-25
    • 2021-08-29
    • 1970-01-01
    • 2012-02-21
    • 2017-11-19
    • 1970-01-01
    相关资源
    最近更新 更多