这是我的JavaScript代码:
function selectRow(objTR) {
for (i = 0; i < ddlModalityList.options.length; i++) {
if (ddlModalityList.options[i].text == objTR.cells[1].innerText.trim()) break;
}
ddlModalityList.options[i].selected = true;
txtSSAETitle.value = objTR.cells[2].innerText.trim();
txtSSName.value = objTR.cells[3].innerText.trim();
}
这是转发器代码。在行上单击我传递tr的id并在相应的下拉列表和文本框中显示相应的td值。此代码在IE中运行良好,但在Mozilla Firefox中失败。
<tr onclick="selectRow(this);">
<td class="csstablelisttd" style="display: none;" >
<%#Eval("Acq_Modality_ID")%>
</td>
<td class="csstablelisttd" >
<asp:Label ID="lblModality" runat="server" Text='<%#Eval("Modality")%>'></asp:Label>
</td>
<td class="csstablelisttd">
<asp:Label ID="lblSchdledStAETitle" runat="server" Text='<%#Eval("Scheduled_Station_AE_Title")%>'></asp:Label>
</td>
<td class="csstablelisttd">
<asp:Label ID="lblSchdleStationAEName" runat="server" Text='<%#Eval("SCHEDULED_STATION_NAME")%>'></asp:Label>
</td>
</tr>
答案 0 :(得分:7)
Firefox不支持innerText
。您可以改用textContent
。但是,较旧的IE不支持textContent
,因此您需要使用一个并回退到另一个。
function getInnerText(el) {
return el.textContent || el.innerText;
}
请注意,它们是not identical,但出于您的目的,它会没问题。
答案 1 :(得分:2)
使用 innerHTML 代替innerText。 InnerText在FF中不起作用。 innerHTML将同时适用于它们。
答案 2 :(得分:1)
Firefox不支持innerText .. you should use jquery
,因此您无需关心浏览器实现的差异
所以使用jquery你的代码将是
function selectRow(objTR) {
for (i = 0; i < ddlModalityList.options.length; i++) {
if (ddlModalityList.options[i].text == $(objTR).children('td').eq(1).html().trim()) break;
}
ddlModalityList.options[i].selected = true;
txtSSAETitle.value = $(objTR).children('td label').eq(2).html().trim();
txtSSName.value = $(objTR).children('td label').eq(3).html().trim();
}
我离开ddlModalityList
因为我不知道它是什么。
答案 3 :(得分:0)
function selectRow(objTR) {
for (i = 0; i < ddlModalityList.options.length; i++) {
if (ddlModalityList.options[i].text == $(objTR).children('td').eq(1).html().trim()) break;
}
ddlModalityList.options[i].selected = true;
txtSSAETitle.value = $(objTR).children('td label').eq(2).html().trim();
txtSSName.value = $(objTR).children('td label').eq(3).html().trim();
}
答案 4 :(得分:0)
的document.getElementById(&#39;的inputText&#39)。innerHTML.replace(/&LT; + GT; / GIM,&#39;&#39;));