我有一个函数,我将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')
,它工作得很好。
我从浏览器(Google Chrome)得到这个信息
有没有一种方法可以做到这一点,而不像这样"硬编码"?
这是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;
}
}
看看你的代码,你正在使用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>