for循环创建控件点击其中一个是改变其样式
发布于 5 年前 作者 kchang 15667 次浏览 来自 问答

比如 我用for创建了4个按钮 A、B、C、D 当点击 A 时 A的背景变为红色



<view wx:for="{{topic.answerLists}}" wx:key="{{index}}">


<button>{{item.answer}}</button>


</view>

7 回复

差不多吧  只是用了for 如果用这个方法 就会全部都改变所以想问的是 怎么做的 改变当前点击的那一个

<view  wx:for="{{topic.answerLists}}" wx:key="{{index}}">
     <button id="answer{{item.answer_id}}"
    class='{{isChecked}}'
      data-topic_id="{{topic.topic_id}}" data-answer="{{item.answer}}"
       bindtap="respond">{{item.answer}}</button>
     
    </view>

如果是固定的,你可以通过判断这个键是不是A的键

<button wx.if=‘键==A’     background-color=’{{变量}}’  事件=‘事件’>A</buttonn>

<button wx.if=‘键!=A’     background-color=’{{变量}}’  事件=‘事件’>A</buttonn>

你可以试一下这个

有一个数据id是

能直接打死值吗,不要用for

不能这是从后台得到的数据

从后台来的就有点麻烦了,你能获取到它的键吧,他的键是不是固定死的

如果我没理解错你的意思你是想这样

<button background-color=’{{变量}}’  事件=‘事件’>A</buttonn>

事件:function(){

this.setData({

变量名: “值”

})

}

你是要这样吗?

回到顶部