0

これは私の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>
4

5 に答える 5

7

Firefox はサポートしていませんinnerText。代わりに使用できますtextContent。ただし、古い IE は をサポートしていないためtextContent、一方を使用して他方にフォールバックする必要があります。

function getInnerText(el) {
    return el.textContent || el.innerText;
}

それらは同一ではないことに注意してくださいが、目的には問題ありません。

于 2012-05-03T09:53:25.960 に答える
2

innerTextの代わりにinnerHTMLを使用します。InnerText は FF では機能しません。innerHTML は両方で機能します。

http://forums.asp.net/p/1228392/2210082.aspx

于 2013-01-12T05:00:15.077 に答える
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私はそれが何であるかわからないので、そのままにしておきます。

于 2012-05-03T09:55:49.077 に答える
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();
}
于 2012-05-31T11:45:06.193 に答える
0

document.getElementById('InputText').innerHTML.replace(/<.+?>/gim,''));

于 2013-10-23T03:42:13.360 に答える