01/10/2018, 15:15

Cách gọi hàm trong JavaScipt?

Chào các anh chị. Em mới học JavaScript và đang thắc mắc 1 ch nhờ anh/chị giúp.
Bài toán là: Nhập kí tự bất kì ở textarea(tối đa 1000 kí tự) bên phải và hiện số kí tự còn lại có thể nhập vào text bên trái.
Em viết code như sau,ai tìm giúp em lỗi sai ở đâu vậy ạ? Em cảm ơn!

<head>
	<script>
    	function bai9(){
			var x = document.getElementById("#text2").value.toString(); //lấy nội dung trong textarea có id là text2
			var st = 1000 - x.length; //lấy giá trị max trừ cho giá trị của đoạn textarea đã nhập
			document.getElementById("text1").value = st; //gán giá trị cho text bên trái
		}
    </script>
</head>

<body>
	<h2>Enter message (max: 1000 characters)</h2>
    <form>
    	<input type="text" id="text1"/>
        <textarea cols="50" rows="10" id="text2" onkeyup="bai9()"></textarea>
    </form>
</body>
Quân viết 17:20 ngày 01/10/2018

var x = document.getElementById("#text2").value.toString();

document.getElementById(“text1”).value = st;

Bạn có thấy gì khác giữa hai dòng mà bạn viết ra không

Phan Vũ viết 17:26 ngày 01/10/2018

chỗ này mình nghĩ mình làm đúng mà, sai chỗ nào ta? Dòng đầu là lấy giá trị của text2 gán cho x, sau đó gán st = 1000 - x sau đó mới gán lại cái st cho text1. Mình đã thêm dấu # cho text1 rồi.

Quân viết 17:16 ngày 01/10/2018

Lí do gì bạn nghĩ thêm # thì sẽ đúng. Tại sao không phải là bỏ dấu đó đi. #something là cú pháp cho biết sẽ select by id. Method getElementById đã chỉ rõ sẽ select by id rồi thì đâu cần # vào

Vô Thin viết 17:21 ngày 01/10/2018

Có lẽ cái dấu # là sự ám ảnh khi tìm trên mạng về JavaScript, chả hiểu sao nhiều thằng cứ hướng dẫn người khác bằng JQuery, cứ như JQuery là một bản cài đặt kiểu Standard JavaScript vậy, ớn thiệt.

明玉 viết 17:28 ngày 01/10/2018

var x = document.getElementById("#text2").value.toString(); //lấy nội dung trong textarea có id là text2
var st = 1000 - x.length; //lấy giá trị max trừ cho giá trị của đoạn textarea đã nhập
document.getElementById(“text1”).value = st;

Xài API nào thì theo cú pháp string của API đó nhé, đừng có tư duy hình thức thế.

Bài liên quan
0