Javascript-更改事件对象上的文本';兄弟姐妹
我试图让我的js为我的网站工作,这样当用户选择一个文件来上传按钮上的文本时,事件调用者的兄弟将发生变化。不幸的是,我不能让它工作,因为我在js的经验不足,我不能想出一个更好的方法。我最好的方法是让它工作,但是每个有文件输入的按钮上的文本都发生了变化。有人能帮我吗?这是我的设置和咖啡代码: 使用修复进行编辑: 他认为:Javascript-更改事件对象上的文本';兄弟姐妹,javascript,ruby-on-rails,coffeescript,haml,Javascript,Ruby On Rails,Coffeescript,Haml,我试图让我的js为我的网站工作,这样当用户选择一个文件来上传按钮上的文本时,事件调用者的兄弟将发生变化。不幸的是,我不能让它工作,因为我在js的经验不足,我不能想出一个更好的方法。我最好的方法是让它工作,但是每个有文件输入的按钮上的文本都发生了变化。有人能帮我吗?这是我的设置和咖啡代码: 使用修复进行编辑: 他认为: .assets-fields.pull-left.span3 - count=0 = f.simple_fields_for :assets do |builder|
.assets-fields.pull-left.span3
- count=0
= f.simple_fields_for :assets do |builder|
- if builder.object.new_record?
.file-wrapper.pull-left
.btn.btn-warning
%span.icon-camera
.photo-text{:id => "asset_#{count}"} Choose a Photo
- count = count + 1
= builder.file_field :photo
在我的js.coffee中:
$ ->
$("input:file").change (event) ->
idOfInput = event.target.id
console.log idOfInput
idOfSibling = $('#' + idOfInput).prev().attr('id')
console.log idOfSibling
$('div#' + idOfSibling).text("Photo Selected!")
提前感谢
idOfButtonSibling.text
是一个函数
$(idOfButtonSibling).text("Photo Selected!")
idOfButtonSibling是idOfInput的所有同级的数组。在更改文本之前,必须选择单个元素 我建议您为每个按钮分配唯一的ID,并使用它们来引用特定的按钮 试试这个,但这不是一个好的做法:
$(idOfButtonSibling[0]).text = "Photo Selected!"
或者
或
等等…现在一切正常,将更新以显示我的结果,以防将来有人需要它!
$(idOfButtonSibling[1]).text = "Photo Selected!"
$(idOfButtonSibling[2]).text = "Photo Selected!"