Sen Genel jQuery olarak
$(document.getElementById('j_idt8:beginDateTxt')).mobiscroll().date({theme: 'android-ics light', mode:'scroller', display: 'bottom'});
onun $()
fonksiyonunda CSS seçicileri gibi bir şey kullanır deneyebilirsiniz. Bir CSS seçicisinde :
, bir sahte sınıf anlamına gelir. Ancak, sizin durumunuzda :
sadece kimliğin bir parçasıdır. getElementById()
genelini kullanırsanız, argüman değil ayrıştırılır, ancak tamamen kimlik olarak görülür. Yani getElementById()
kullanarak ve sonucu $()
ile sarmalayarak bu "yanlış anlama" yı engelleyebilirsiniz. Bununla birlikte, genel olarak, JSF'nizdeki ad planını değiştirmek daha iyi olurdu diye düşünüyorum.
DÜZENLEME
Eğer \\
kullanımıyla özel karakterleri kaçmak gerekir jQuery documentation on selectors devletler:
To use any of the meta-characters (such as !"#$%&'()*+,./:;<=>[email protected][]^`{|}~) as a literal part of a name, it must be escaped with with two backslashes: \. For example, an element with id="foo.bar"
, can use the selector $("#foo\\.bar")
.
Bu zaten Daniel, verdiği cevaba götürecek Bence üstündür yukarıda verilen cevaba. Bununla birlikte, açıklama geçerli kalır.
$("#j_idt8\\:beginDateTxt").mobiscroll().date({theme: 'android-ics light', mode:'scroller', display: 'bottom'});
aynen öyle! thx – user2294016
jQuery seçicisini kullandığımızı düşündüğümüz için getElementById – AaA
@BobSort'u kullanmıyoruz. Burada sorun, jQuery'yi bir psödo sınıfın kullanıldığı ve sonuçta başarısız olduğunu düşündüğü bir ': 'içeriyordu. Aşmak için argümanını sadece bir dize olarak yorumlayan getElementById() 'yi kullandım. – Sirko