jquery attr("onclick",function()) 自动触发onclick事件生成行,导致死循环

luoshiyindfj 2011-09-07 08:53:26

function createRowItem(rowId)
{
var rows=$("#tab_OrderDetail tr");
var rowLen=rows.length;
var rowN= rowId+1;
if(rowN==rowLen)
{
var tr=$("<tr>").append("<td>"+rowN+"</td><td><input type=\"text\" id=\"truckName_"+rowN+"\"/></td><td><input type=\"text\" id=\"truckCode_"+rowN+"\"/></td><td><select id=\"truckType_"+rowN+"\"><option >0</option></select></td><td><input type=\"text\" id=\"configuration_"+rowN+"\"/></td><td><input type=\"text\" id=\"price_"+rowN+"\"/></td><td><input type=\"text\" id=\"Amount_"+rowN+"\"/></td><td><input type=\"text\" id=\"totalMoney_"+rowN+"\"/></td><td><select id=\"consignType_"+rowN+"\"><option>0</option></select></td><td><input type=\"text\" id=\"consignTime_"+rowN+"\"/></td>");
tr.attr("id", (rowN));
$("#tab_OrderDetail").append(tr);
$("#consignTime_"+rowN+"").attr("onclick",createRowItem(rowN));
}else{ return;}
}

...全文
903 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengyun817 2011-09-07
  • 打赏
  • 举报
回复
封装一下就行,function(){createRowItem(rowN)}

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(function(){
$("#row_1").one("click",function(){addRow($(this).attr("id"))});
});

function addRow(rowid)
{
var nextRowid = "row_"+(rowid.split("_")[1]+1);
$($("#"+rowid).clone()).appendTo($("#test")).attr("id",nextRowid).one("click",function(){ addRow(nextRowid)});;
}
//]]>
</script>

<body>
<table id="test">
<tr id="row_1">
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</table>
</body>
luoshiyindfj 2011-09-07
  • 打赏
  • 举报
回复
奇怪,写在 html里面 onclick=\"createRowItem("+rowN+");\" 就OK了。 再琢磨琢磨。谢谢了。
三石-gary 2011-09-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 luoshiyindfj 的回复:]

确实是这样,点击第一行之后,直接就循环的生成行,onclick事件没起到控制生成的作用。直接就触发了。有什么高见没有?
[/Quote]

想办法不放在里面也能实现就行了
luoshiyindfj 2011-09-07
  • 打赏
  • 举报
回复
确实是这样,点击第一行之后,直接就循环的生成行,onclick事件没起到控制生成的作用。直接就触发了。有什么高见没有?
三石-gary 2011-09-07
  • 打赏
  • 举报
回复
$("#consignTime_"+rowN+"").attr("onclick",createRowItem(rowN));只要点击就会造成死循环
showenxxx 2011-09-07
  • 打赏
  • 举报
回复
jquery里面事件绑定可以用
$("input").click(function(){
//do stuff
});

$("input").bind("click",function(){
//do stuff
});

$("input").live("click",function(){
//do stuff
});
【原创改进代码】基于分段损耗与需求侧响应的多源协同阶梯碳价储能优化模型(Python代码实现)内容概要:本文介绍了一个基于Python实现的“原创改进代码”——多源协同阶梯碳价储能优化模型,该模型融合了分段损耗特性与需求侧响应机制,旨在提升能源系统的运效率与低碳水平。通过对储能系统、多种能源出力及碳排放成本的联合优化,模型实现了在复杂电力系统环境下的精细化调度。文档还展示了大量相关科研方向的技术资源,涵盖智能优化算法、机器学习、深度学习、电力系统仿真、路径规划、信号处理等多个前沿领域,并提供了MATLAB/Simulink仿真模型与Python代码实例,突出其在科研复现与工程实践中的应用价值。; 适合人群:具备一定编程基础和电力系统、能源优化背景的研究生、科研人员及工程技术人员,尤其适合从事综合能源系统、低碳调度、储能优化等相关课题研究的人员。; 使用场景及目标:①用于多能源系统中储能配置与运策略的优化设计;②支撑碳交易机制下的低碳经济调度研究;③作为学术论文复现、算法改进与科研项目开发的技术参考; 阅读建议:此资源以实际代码实现为核心,建议读者结合文中提供的仿真案例与算法框架,动手实践并调试代码,深入理解模型构建逻辑与优化机制,同时可拓展应用于自身研究场景。

52,784

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧