0

我有一个函数,我将 ID 参数作为对象传递到 javascript 函数中,但浏览器不接受它。

<div id="searchByUser">
    <input type="text" runat="server" id="txtSearchByEmail"  onclick="ButtonEnabled('butSearchByEmail', 'txtSearchByEmail')" onkeyup="ButtonEnabled('butSearchByEmail', 'txtSearchByEmail')" />
   <input type="button" runat="server" id="butSearchByEmail" onserverclick="butSearch_Click" value="Search User" disabled/>
</div>

但是,如果我这样做,ButtonEnabled('MainContent_butSearchByEmail', 'MainContent_txtSearchByEmail')它可以正常工作。

我从浏览器(谷歌浏览器)获得了这个信息

有没有办法做到这一点而无需像这样“硬编码”?

这是javascript函数

function ButtonEnabled(objButton, objText) {
    var t = document.getElementById(objText);
    var b = document.getElementById(objButton);
    if (t.value.length > 1) {
        b.disabled = false;
    }
    else {
        b.disabled = true;
    }    
}
4

1 回答 1

1

查看您的代码,您正在使用 asp.net。你必须使用ClientID

<div id="searchByUser">
    <input type="text" runat="server" id="txtSearchByEmail"  onclick="ButtonEnabled('<%= butSearchByEmail.ClientID %>', '<%= txtSearchByEmail.ClientID %>')" onkeyup="ButtonEnabled('<%= butSearchByEmail.ClientID %>', '<%= txtSearchByEmail.ClientID %>')" />
   <input type="button" runat="server" id="butSearchByEmail" onserverclick="butSearch_Click" value="Search User" disabled/>
</div>
于 2013-06-13T13:05:45.060 回答