Saya memiliki kode HTML sederhana dengan beberapa javascript, sepertinya:
<html>
<head>
<script type="text/javascript">
function changeDivContent() { // ...
};
</script>
</head>
<body>
<input type="radio" name="radiobutton" value="A" onClick="changeDivContent()">
<input type="radio" name="radiobutton" value="B" onClick="changeDivContent()">
<div id="content"></div>
</body>
</html>
Saya hanya ingin dapat mengubah konten div (ini html dalam) dengan memilih salah satu dari tombol radio "A" atau "B", tetapi konten div # tidak memiliki atribut "nilai" atribut javascript, jadi saya bertanya bagaimana caranya dilakukan.
javascript
html
rampok
sumber
sumber
document.getElementById("content").innerText = "<b>bold text?</b>";
akan berperilaku berbeda, dan kadang-kadang cukup bermanfaat, untukdocument.getElementById("content").innerHTML = "<b>bold text?</b>";
innerHTML
daripadainnerText
dantextContent
karenainnerHTML
kompatibel untuk semua browser.innerHTML
XSS dapat dengan mudah menyebabkan kerentanan ketika nilainya berasal dari input yang tidak dipercaya. PenggunaaninnerText
selalu disarankan untuk alasan keamanan dan saat ini didukung oleh semua browser ( caniuse.com/#feat=innertext )sumber
Dapatkan id
div
konten yang ingin Anda ubah lalu berikan teks seperti di bawah ini:sumber
Anda dapat menggunakan fungsi pembantu berikut:
Di mana
#content
harus pemilih CSS yang validBerikut ini contoh kerjanya .
Additionaly - hari ini (2018.07.01) Saya membuat perbandingan kecepatan untuk solusi jquery dan pure js (MacOs High Sierra 10.13.3 di Chrome 67.0.3396.99 (64-bit), Safari 11.0.3 (13604.5.6), Firefox 59.0.2 (64-bit)):
Solusi jquery lebih lambat daripada solusi js murni: 69% pada firefox, 61% pada safari, 56% pada chrome. Browser tercepat untuk js murni adalah firefox dengan operasi 560M per detik, yang kedua adalah safari 426M, dan paling lambat chrome 122M.
Jadi pemenangnya adalah js dan firefox murni (3x lebih cepat dari chrome!)
Anda dapat mengujinya di mesin Anda: https://jsperf.com/js-jquery-html-content-change
sumber
----------------- kode JS- ------------
Kode Langsung
https://jsbin.com/poreway/edit?html,js,output
sumber
ubah onClick to
onClick="changeDivContent(this)"
dan cobaTampilkan cuplikan kode
sumber