javascript 带参方法在onclick中如何正确传值

本文介绍了一种使用JavaScript操作HTML表格的方法,并详细讲解了如何通过JavaScript为表格元素添加事件监听器并传递参数,包括单个及多个参数的处理方式。此外还提供了具体的示例代码,展示了如何结合Ajax获取数据并更新表格内容。

1.

var operate=function(row,index){

    var ope = "<a href='#' onclick='update(\"" + row + "\")'>修改</a> | <a href='javascript:void(0)'>删除</a>";

    return ope;

}

 

注意点:需要用转义字符

 

2.

 

.一般使用onclick传参

<input type="button" οnclick="deletexxx(1)"  value="删除">

2.使用append或者innerHTML进行拼接语句的时候,绑定onclick事件并且传参,单个参数

'<span id="'+v.id+'" οnclick="delete(\"'+a+\'")">'+v.cartypename+'</span>'

3.使用append或者innerHTML进行拼接语句的时候,绑定onclick时间并且传参,多个参数

document.getElementById("div1").innerHTML +=  "<span οnclick=\"getSeatingCarMark('"+data[0]+"','"+data[i]+"')\"></span>";

添加onclick后运行报错:

Uncaught ReferenceError: xxx is not defined, 或者 Uncaught SyntaxError: Unexpected token } 

如果是报这两种错误,就是引号的问题,需要转义.

总结: 需要使用到 \ 来转义,

以下代码是项目中实例:

 

function loadData(key,pageNo,pageSize){
    $.ajax({
        url:"/selectShops",
        type:"post",
        data:{key:key,pageNo:pageNo,pageSize:pageSize},
        success:function(data){
            var html="";
//                        var reportlisthtml='';
            var maojungang = data.data;
//                        var message = json.message;
            var totalCount = data.total;
            pages = Math.ceil(totalCount/pageSize);
//                        alert(message);
            for(var i in maojungang){
                html=html+"<tr>"+
                    "<td>"+maojungang[i].shopnuber+"&nbsp;</td>"+
                    "<td>"+maojungang[i].shopname+"&nbsp;</td>"+
                    "<td>"+maojungang[i].shopprice+"¥"+"&nbsp;</td>";
                if(maojungang[i].shopnum > 100 ){
                    html=html+"<td style='color: color: #52167f;font-size: 20px'>"+maojungang[i].shopnum+maojungang[i].unit+"&nbsp;</td>";
                }else if(maojungang[i].shopnum < 100 && maojungang[i].shopnum >10){
                    html=html+"<td><h1 style='#11ce0c'>"+maojungang[i].shopnum+maojungang[i].unit+"&nbsp;</h1></td>";
                }else{
                    html=html+"<td><h1 style='color: #ff252f'>"+maojungang[i].shopnum+maojungang[i].unit+"&nbsp;</h1></td>";
                }
                html=html+
                    "<td>"+maojungang[i].shopno+"&nbsp;</td>"+
                    "<td>"+maojungang[i].createdate+"&nbsp;</td>"+
                    "<td>"+"<div id='bianda2'><img  src='"+maojungang[i].shoppath+"'></div>"+"&nbsp;"+"</td>"+
                    "<td><a href='/wshopView?id=\""+maojungang[i].id+"\"'><img src='img/read.png' alt='查看' title='查看'/></a>"+
                    "<a href='/wshopUpdate?id=\""+maojungang[i].id+"\"'><img src='img/xiugai.png' alt='修改' title='修改'/></a>"+
                    "<a href='#' οnclick='del(\""+maojungang[i].id+"\")' class='removeBill'><img src='img/schu.png' alt='删除' title='删除'/></a>"+
                    "</td></tr>";

            }
//                       $('#TableData').html(reportlisthtml);
            $("#TableData").html(html);
            var newText = "共" + totalCount + "条," + "第" + pageNo + "页," + "共" + pages + "页";
            $("#summary").text(newText);

        }
    });
}
function queryproder(){
    $.ajax({
        url:"/queryprList",
        type:"post",
        data:{},
        success:function(data){
            var html="<option value=''>&#45;&#45;请选择&#45;&#45;</option>";
            for(var i in data){
                html=html+
                    "<option value=\""+data[i].id+"\">"+data[i].prname+"</option>"

            };

            //                   $('#queryprList').html('').append(html);
            $("#keyword").html(html);
        }
    });
}
//删除
function del(id) {
    var choice = confirm("您确认要删除吗?", function() {
    }, null);
    if (choice) {
        $.ajax({
            url:"/delShop",
            type:"post",
            data:{id:id},
            success : function() {
                alert("删除成功!");
                search();
            },
            error : function() {
                alert("删除失败!");
            }

        });
    }
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值