#javascript #ajax
#javascript #ajax
Вопрос:
Я хочу передать идентификатор кнопки с помощью вызова ajax… и отобразите результат в id с именем demo2 …
<script>
function loadDoc2() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 amp;amp; xhttp.status == 200) {
document.getElementById("demo2").innerHTML = xhttp.responseText;
}
}
xhttp.open("GET", "get_coupon_code.php?offline_offer_id=" this.id, true);
xhttp.send();
}
</script>
<div id="demo2"></div>
<button id="111" onclick="loadDoc2()">Button 1</button>
<button id="222" onclick="loadDoc2()">Button 2</button>
<button id="333" onclick="loadDoc2()">Button 3</button>
Комментарии:
1. передайте
this.id
метод loadDoc2() вот так<button id="111" onclick="loadDoc2(this.id)">Button 1</button>
и получите этот идентификатор в функции javascript следующим образом :loadDoc2(id)
Ответ №1:
Вы можете сделать это двумя способами № 1.
<script>
function loadDoc2(id) { //here is your id
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 amp;amp; xhttp.status == 200) {
document.getElementById("demo2").innerHTML = xhttp.responseText;
}
}
xhttp.open("GET", "get_coupon_code.php?offline_offer_id=" this.id, true);
xhttp.send();
}
</script>
<div id="demo2"></div>
<button id="111" onclick="loadDoc2("111")">Button 1</button>
<button id="222" onclick="loadDoc2("222")">Button 2</button>
<button id="333" onclick="loadDoc2("333")">Button 3</button>
Нет 2.
<script>
function loadDoc2() {
var Id = $(this).attr('id'); //here is your id
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 amp;amp; xhttp.status == 200) {
document.getElementById("demo2").innerHTML = xhttp.responseText;
}
}
xhttp.open("GET", "get_coupon_code.php?offline_offer_id=" this.id, true);
xhttp.send();
}
</script>
<div id="demo2"></div>
<button id="111" onclick="loadDoc2()">Button 1</button>
<button id="222" onclick="loadDoc2()">Button 2</button>
<button id="333" onclick="loadDoc2()">Button 3</button>
Ответ №2:
Я бы передал его функции и использовал его как переменную, потому что «это» отображается в области окна.
<script>
function loadDoc2(element) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 amp;amp; xhttp.status == 200) {
document.getElementById("demo2").innerHTML = xhttp.responseText;
}
}
xhttp.open("GET", "get_coupon_code.php?offline_offer_id=" element.id, true);
xhttp.send();
document.getElementById("demo2").innerHTML = element.id " clicked";
}
</script>
<div id="demo2"></div>
<button id="111" onclick="loadDoc2(this)">Button 1</button>
<button id="222" onclick="loadDoc2(this)">Button 2</button>
<button id="333" onclick="loadDoc2(this)">Button 3</button>