jQuery添加options点击事件并传值

说明:

  根据选择不同店铺选项,上送不同id值,展示不同商品列表

var formStr = "{‘supplierId‘:‘供应链企业|%-jm-sprt-%|93794498-3‘}";

$.ajax({
type : "post",
dataType : "json",
cache : false,
url : "../../../webservice/gmall.json", // 提交到一般处理程序请求数据
data :"businessCode=61001001&message="+encodeURI(formStr).replace(/\+/g, "%2B"),
async : false,
error : function() {
//alert("connection error!!!");
layer.alert("数据加载失败,请及时联系管理员!",0);
},
success : function(data) {
var dataJson = strToJson(data.msg);
var shopname = dataJson.body.gmPage;

if(dataJson.head.status==‘000000‘){
$.each(shopname,function(i,item){
$("#store").append("<option id=‘"+item.id+"‘ value=‘"+item.shopType+"‘ title=‘"+item.name+"‘>"+item.name+"</option>");
})

$("select").on(‘click‘,function (){
var opt = $(this).children(‘option:selected‘);
var shopId = $(opt).attr(‘id‘);
var shopType = $(opt).val();
var formStrshop = " {‘shopId‘:"+shopId+",‘shopType‘:"+shopType+"}";
if($("option").val()==‘‘){
$("#tb").empty();
}
$.ajax({
type : "post",
dataType : "json",
cache : false,
url : "../../../webservice/gmall.json", // 提交到一般处理程序请求数据
data :"businessCode=61001003&message="+encodeURI(formStrshop).replace(/\+/g, "%2B"),
async : false,
error : function() {
layer.alert("数据加载失败,请及时联系管理员!",0);
},
success : function(data) {
var dataJson = strToJson(data.msg);
var shopname = dataJson.body.gmPage;
if(dataJson.head.status==‘000000‘){
$.each(shopname,function(i,item){
var attributeValue11 = dataJson.body.gmPage[i].attributeValue11;
$("#tb").empty();
$("#tb").append("<tr id=‘"+item.id+"‘>"
+"<td><input type=‘checkbox‘ value=‘"+item.id+"‘ name=‘price‘/></td>"
+"<td>"+item.sn+"</td>"
+"<td>"+item.name+"</td>"
+"<td>"+item.attributeValue11+"</td>"
+"<td><input type=‘text‘ name=‘discount‘ class=‘text‘ style=‘width:100px‘/></td>"
+"<td>"+0+"</td></tr>"
);
})
}
}
});
})
}
}
});

【简单示例】

<select name="" id="">
        <option value="1" id="1">123</option>
        <option value="2" id="2">gfg</option>
        <option value="3" id="3">ds3</option>
        <option value="4" id="4">1fgtr3</option>
        <option value="5" id="5">6y3</option>
        <option value="6" id="6">1fbnh3</option>
        <option value="7" id="7">1vdf3</option>
    </select>
    <script src="jquery-1.8.2.min.js"></script>
    <script>
        $(function(){
            $(‘select‘).on(‘click‘,function(){
                // $(this).on(‘click‘,function(){  此步可省略,无需管option的点击事件
                      var $opt = $(this).children(‘option:selected‘);
                      console.log($($opt).attr(‘id‘),$($opt).val(),$($opt).html());
                // })
            })
        })
    </script>

时间: 2024-10-27 10:54:13

jQuery添加options点击事件并传值的相关文章

后台找到repeater里面的div并添加客户端点击事件

public partial class Inv_SelectWorkservice : System.Web.UI.Page,IPostBackEventHandler{ } 通过OnItemCreated 找到repeater里面的div并添加客户端点击事件div要加上runat="server" id="itemTy" onclick="test" 后台: protected void Repeater2_ItemCreated(objec

jQuery模拟鼠标点击事件失效的问题

最近使用jQuery操作浏览器获取数据,需要对分页的信息进行处理,发现直接使用$('div#pager a.next').click();的这种写法无法触发点击事件. 使用trigger('click')的写法也是无济于事. 在网上一顿扒拉后,发现使用$('div#pager a.next')[0].click();就OK了. $('div#pager a.next')[0]这种写法其实就相当于把jQuery对象转换为Dom对象了. 模拟点击不生效的原因 如果使用jQuery的写法:$('a#t

iOS 为自定义tableView添加button点击事件后获取其序号

在自定义tableView中,为cell添加button点击事件后,如何获取其对应的序号? 1.创建tableView: 先创建一个成员变量: @interface MyCameraViewController ()<UITableViewDelegate,UITableViewDataSource> { UITableView *_tableView; }@end 在viewDidLoad中初始化 _tableView = [[UITableView alloc] initWithFrame

Vue 接收数据for循环渲染出的标签jQuery渲染的点击事件无效

Vue 接收数据for循环渲染出的标签jQuery渲染的点击事件无效 Vue在渲染页面的时候使用jQuery的时候会发现当在created生命周期中获取后台数据,写在 mounted 生命周期的jquery渲染的点击事件不管用了. 理论上,mounted是界面html生成结束才会开始执行的,应该是可以的,但实际效果就是不行. 原因 问题的原因出现在,jquery确实在界面HTML生成之后执行了,但是当时向后台请求的数据还没请求回来,当请求回来用for循环重新渲染数据后,jquery已经执行完了,

从头开始学 RecyclerView(二) 添加item点击事件

不管了,先来张图 偶吐了个槽 item点击事件必须手动添加,默认并没有一个显式的API接口可供调用. 为了节约学习时间,网上找了篇很不错的文章.这里基本就复制了. 添加点击事件 RecyclerView#addOnItemTouchListener 分析 查看RecyclerView源码可以看到,RecyclerView预留了一个Item的触摸事件方法: public void addOnItemTouchListener(OnItemTouchListener listener) { mOnI

Android 高级UI设计笔记20:RecyclerView 的详解之RecyclerView添加Item点击事件

1. 引言: RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件,顺便复习一下观察者模式. 2. 最终目的 模拟ListView的setOnItemClickListener()方法,调用者只须调用类似于setOnItemClickListener的东西就能获得被点击item的相关数据.   3. 原理 为RecyclerView的每个子item设置setOnClickLi

react 点击事件+父子传值

接下来要做的效果是,在父组件添加两个按钮,点击后改变父组件传过去的值 父组件 1 import React, { Component } from 'react'; 2 import Test from './component/test'; 3 //声明welcome组件 4 class welcome extends Component { 5 //声明一个构造函数 6 constructor(props) { 7 super(props); 8 //this.state是定义组件状态,可理

在ViewHolder中添加item点击事件接口(自定义

在Adapter中定义接口并提供回调static class HomeAdapter extends RecyclerView.Adapter<HomeAdapter.MyViewHolder> { private List<String> mList; private Context mContext; private OnItemClickListener mOnItemClickListener; public HomeAdapter(List<String> l

jQuery 动态绑定的点击事件

$(function () { var a = 1, $_div = $('#test'); $('input[name=addbtn]').on('click', function () { $_div.append('<input type="button" name="test' + a + '" value="按钮' + a + '"/>'); a++; }); //偶数项点击事件 $_div.on('click', 'inp