热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

明明有方法却报UncaughtReferenceError!!急急急江湖救急啊

我在JS中用拼接字符串的形式显示循环查询但是里面写的onclick事件缺报错调用不到方法求求大神们给指正!!!!!!!!varobjWalkOffInfowindo
我在JS中用拼接字符串的形式 显示循环查询 但是里面写的onclick 事件缺报错 调用不到方法 
求求大神们给指正!!!!!!!!


var objWalkOffInfo = window.dialogArguments;
var gType = 2;// 货位分配状态 0:分配失败 1:分配成功 2:未分配
var objCodeColor;
//选中
function codeTableTr(tr){
$(tr).addClass("codeTrColor");
if(objCodeColor != undefined && objCodeColor != tr){
$(objCodeColor).removeClass("codeTrColor");
}
objCodeColor = tr;
}
$(function() {

loadData();

// 撤销分配
$("#button_repealWalkOff").click(function() {

var spnOrderNo = objWalkOffInfo.spnOrderNo;

// 查询分配状态
$.ajax( {
type : "GET",
async : false,
url : "walkoff!walkOffStatus?" + new Date().getTime(),
data : {
spnOrderNo : spnOrderNo
},
success : function(data) {
var array1 = data.walkOffStatus;
if (array1 != undefined) {
for ( var b = 0; b < array.length; b++) {
gType = array1[b].groType
}
}
}
});

if (gType == 2) {
alert("货位还没有分配");
} else {
// 撤销分配
$.ajax( {
type : "GET",
url : "walkoff!repealWalkOff?" + new Date().getTime(),
data : {
spnOrderNo : spnOrderNo
},
success : function(data) {
alert(data.msg);
status = 1;
loadData();

}
});
}
});

// 分配货位
$("#button_createWalkOff").click(function() {

var spnOrderNo = objWalkOffInfo.spnOrderNo;

// 查询分配状态
$.ajax( {
type : "GET",
async : false,
url : "walkoff!walkOffStatus?" + new Date().getTime(),
data : {
spnOrderNo : spnOrderNo
},
success : function(data) {
var array1 = data.walkOffStatus;
if (array1 != undefined) {
for ( var b = 0; b < array.length; b++) {
gType = array1[b].groType
}
}
}
});
if (gType == 2) {
// 分配货位
$.ajax( {
type : "GET",
url : "walkoff!saveWalkOff?" + new Date().getTime(),
data : {
spnOrderNo : spnOrderNo
},
success : function(data) {
status = 2;

alert(data.msg);
loadData();
}
});
} else {
alert("货位已分配,请撤销后再重新分配");
}
});

function loadData() {

var spnOrderNo = objWalkOffInfo.spnOrderNo;
var storName = objWalkOffInfo.storName;

$("#spnOrderNo").html(spnOrderNo);
var style = $("#loadDateStyle");
style.addClass("wait");
style.html("正在处理,请稍候");
$
.ajax( {
type : "GET",
url : "walkoff!walkOffInfo?" + new Date().getTime(),
data : {
spnOrderNo : spnOrderNo
},
success : function(data) {
style.removeClass("wait");
style.html("");
var array = data.walkOffInfo;
$("#walkOffTableInfo").html("");
if (array != undefined) {
var str = "";
for ( var i = 0; i < array.length; i++) {

// 查询分配状态
$
.ajax( {
type : "GET",
async : false,
url : "walkoff!walkOffStatus?"
+ new Date().getTime(),
data : {
spnOrderNo : spnOrderNo,
proNo : array[i].proNo,
proBacth : array[i].proBacth
},
success : function(data) {
var array1 = data.walkOffStatus;
if (array1 != undefined) {
gType = array1[0].groType
}
}
});

str = str//这段拼接代码中不能触发onclick 事件!!!
+ " + array[i].snpID + "' >"
+ (i + 1) + "" + "" + storName
+ "" + "" + array[i].proNo
+ "" + "" + array[i].proBacth
+ "" + "" + array[i].proName
+ "" + ""
+ array[i].proStandard + ""
+ ""
+ proFactoryStr(array[i].proFactory)
+ "" + ""
+ proCondition(array[i].proCondition)
+ "" + "" + array[i].proPrice
+ "" + "" + array[i].proUnit
+ "" + "" + array[i].proQty
+ "" + ""
+ stackStatus(gType)// 分配状态 这个能进去 但是这个方法里面的也不能调用 这个是我想实现的功能
+ ""


// 测试方法  
function testtest(obj) {
alert("1");
}

}
$("#walkOffTableInfo").html(str);
}
}
});
}

// 删除
$("#deleteWalkOff").click(function() {
var walkOffId = "";
$("input[id=walkOff_order]").each(function() {
var check = $(this).attr("checked");
if (check) {
walkOffId = walkOffId + $(this).val() + ",";
}
});
if (walkOffId == "") {
alert("请选择需要删除的数据!");
return;
}
// 删除数据
$.ajax( {
type : "GET",
url : "walkoff!deleteWalkOff?" + new Date().getTime(),
data : {
walkOffId : walkOffId.substring(0, walkOffId.length - 1)
},
success : function(data) {
$("#walkOff_allOrder").attr("checked", false);
$("input[id=walkOff_order]").each(function() {
$(this).attr("checked", false);
});
alert(data.msg);
loadData();
}
});

});

// checkbox全选
$("#walkOff_allOrder").click(function() {
var walkOff = $("#walkOff_allOrder");
$("input[id=walkOff_order]").each(function() {
if (walkOff.attr("checked") == true) {
$(this).attr("checked", true);
} else {
$(this).attr("checked", false);
}
});
});
// 货位分配状态   这个方法里面onclick也不能调用 这个是我想实现的功能
function stackStatus(gType) {
if (gType == 0) {
return "  分配失败

";
} else if (gType == 1) {
return "分配成功

";
} else if (gType == 2) {
return "未分配";
}
}


// 修改退厂数量  
function modify(obj) {
alert("1");
alert(obj);
    var tr = $(obj).parent().parent();
    $("#proQty", tr).html("");
    $(obj).hide();
    $(tr).find("#btnReEnter").show();
    $(tr).find("#btnCancel").show();
}

    // 取消 修改
 function cancel(obj) {
 var tr = $(obj).parent().parent();
    $(obj).hide();
    $(tr).find("#btnModify").show();
 }

// 单独提交 修改完退厂数量
function reEnter(obj) {
var tr = $(obj).parent().parent();
var snproID=$("#walkOff_order",tr).html;
var snproQty=$("#reNum",tr).val;

// 修改退厂数量
$.ajax( {
type : "GET",
url : "walkoff!upWalkOff?" + new Date().getTime(),
data : {
snproID : snproID,
snproQty : snproQty
},
success : function(data) {
$("#proQty", tr).html("snproQty");
}
});

}

// 储存条件
function proCondition(str) {
if (str == "01") {
return "常温";
} else if (str == "02") {
return "阴凉";
} else if (str == "03") {
return "冷藏";
} else {
return "无";
}
}

function proFactoryStr(proFactory) {
if (proFactory == undefined || proFactory == null) {
return "";
} else {
return proFactory;
}
}

});

1 个解决方案

#1


提点建议
1.var array = data.walkOffInfo;加断点确定有正确的数据
2.拼接字符串后加断点,查看得到的字符串是正确的
3.控制台输出绑定的方法console.log(codeTableTr),查看是否存在且为全局方法

推荐阅读
author-avatar
-啊-亮---_252_980
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有