JavaScript is required

Gọi hàm search() dưới đây, kết quả xảy ra là gì? Biết rằng:

- name chứa giá trị từ khóa người dùng nhập vào, khác rỗng.

- SearchController nhận tham số name và trả về kết quả tìm kiếm dù tìm thấy hay không?

- Trên trang hiện tại có cặp thẻ: .

function search(){

var xhttp;

var name = document.myform.name.value;

if(name != ""){

var url = "SearchController?name="+name;

if(window.XMLHttpRequest){

xhttp = new XMLHttpRequest();

} else {

xhttp = new ActiveXObject("Microsoft.XMLHTTP");

}

xhttp.open("GET", url, true);

xhttp.onreadystatechange = function(){

if(xhttp.readyState == 4){

var data = xhttp.responseText;

document.getElementById("searchResult").innerHTML = data;

}

}

}

}

A.

Chạy không lỗi cũng không có gì xảy ra trên giao diện.

B.

Đoạn mã trên bị lỗi, kiểm tra được lỗi này trên console của trình duyệt.

C.

Hiển thị kết quả tìm kiếm trả về trong cặp thẻ .

D.

Trang web chuyển sang địa chỉ /SearchController?name={name}, với {name} là giá trị của biến name.

Trả lời:

Đáp án đúng: A


Đoạn code thực hiện một AJAX request để lấy dữ liệu từ `SearchController` dựa trên giá trị nhập vào từ form có tên `myform` và input `name`. Nếu giá trị `name` khác rỗng, một request GET được gửi đến URL `SearchController?name={name}`. Khi request hoàn thành (readyState == 4), nội dung phản hồi (responseText) sẽ được gán vào thuộc tính `innerHTML` của phần tử HTML có id là `searchResult`. Do đó, đáp án chính xác là hiển thị kết quả tìm kiếm trả về trong cặp thẻ `
`.

Câu hỏi liên quan