2013-07-09 28 views
9

My Jade mẫu -Set giá trị của textbox sử dụng JQuery

input#main_search.span2(
    style = 'height: 26px; width: 800px;' , 
    type = 'text', 
    readonly='true', 
    name='searchBar', 
    value='test' 
) 

JS tập tin -

$('#searchBar').val('hi') 
console.log('sup') 

đầu ra điều khiển -

sup 

Nhưng searchBar số liệu thống kê giá trị ở thử nghiệm. Tôi đang làm gì sai?

Trả lời

13

Bạn đang đăng nhập sup trực tiếp mà là một chuỗi

console.log('sup') 

Ngoài ra bạn đang sử dụng id sai

Mẫu nói #main_search nhưng bạn đang sử dụng #searchBar

Tôi cho rằng bạn đang dùng thử số này

$(function() { 
    var sup = $('#main_search').val('hi') 
    console.log(sup); // sup is a variable here 
}); 
5

Đảm bảo bạn có bộ chọn phù hợp, sau đó đợi cho đến khi trang sẵn sàng và phần tử tồn tại cho đến khi bạn chạy hàm.

$(function(){ 
    $('#searchBar').val('hi') 
}); 

Như Derek chỉ ra, ID cũng sai.

Thay đổi để $('#main_search')

1

Bạn đang nhắm mục tiêu sai mục bằng bộ chọn jQuery đó. name của thanh tìm kiếm của bạn là searchBar, không phải là id. Những gì bạn muốn sử dụng là $('#main_search').val('hi').

2

1) bạn đang gọi nó sai cách thử:

$(input[name="searchBar"]).val('hi') 

2) nếu nó không hoạt động gọi tập tin .js của bạn ở cuối trang hoặc kích hoạt chức năng của bạn trên document.ready kiện

$(document).ready(function() { 
    $(input[name="searchBar"]).val('hi'); 
}); 
0
$(document).ready(function() { 
$('#main_search').val('hi'); 
}); 
Các vấn đề liên quan