好吧我想得到一个文本框的值,但是当我做javascript代码getElementByID()时,文本框的id从原始值改变了如何才能得到它? 我甚至试过把cliendIdMode =“静态”放不起作用。
<script type="text/javascript" language="javascript">
function uploadFileChange() {
var tbox = document.getElementById('txtFileName').value;
var fu = document.getElementById("FileUpload1").value;
if (tbox != fu) {
document.getElementById('txtFileName').value = document.getElementById("FileUpload1").value;
}
return false;
}
</script>
原始文本框是:
<asp:TextBox ID="txtFileName" CssClass="textbox" ClientIDMode="Static" runat="server"
Width="300px" ReadOnly="true" />
然后它变成了:
<input name="fuFileInfo$txtFileName" type="text" readonly="readonly" id="fuFileInfo_txtFileName" class="textbox" ClientIDMode="Static" onclick="fuFileInfo_FileUpload1.click();return false;" style="width:300px;" />
答案 0 :(得分:5)
ASP.NET将ID与服务器端标记的呈现方式不同。
因此,使用ClientID
获取呈现的ID:
var tbox = document.getElementById('<%=txtFileName.ClientID %>').value;
var fu = document.getElementById('<%=FileUpload1.ClientID %>').value;
答案 1 :(得分:0)
如果你想使用jquery来获取你可以做的值
var tbox = $("[id$='txtFileName']").val();
这样做的目的是获取id结尾的元素(因此$
)你正在寻找的id。