gpt4 book ai didi

javascript - jquery运行时对象状态维护

转载 作者:行者123 更新时间:2023-11-28 08:16:30 26 4
gpt4 key购买 nike

我正在使用jquery

var message='';

message='<p>Are you sure want to delete ?</p>';
message +='<p style=\'text-align:right;margin: 5px;\'>';
message +='<span><input type=\'button\' value=\'Yes\' class=\'button\'';
message +='onclick="yesOption(\''+this+'\',\''+requestData+'\',\''+gridObject+'\')" /></span>';
message +='<span><input type=\'button\' value=\'No\' id=\'btnNo\' class=\'button\'';
message +=' onclick="return noOption(\''+errMsgDiv+'\')" /></span>';
message +='</p>';

这里我想生成运行时确认对话框,为此我需要在 yesOption 函数中传递 this 对象。但是当我运行此代码时,在该按钮中,代码将生成为 Object 作为字符串,而不是 this 作为当前对象。因此,任何人请解释如何在运行时维护该对象(此对象)的状态。

最佳答案

试试这个:

message='<p>Are you sure want to delete ?</p>';
message +='<p style=\'text-align:right;margin: 5px;\'>';
message +='<span><input type=\'button\' value=\'Yes\' class=\'button\' /></span>';
message +='<span><input type=\'button\' value=\'No\' id=\'btnNo\' class=\'button\' /></span>';
message +='</p>';
var msgDOM = $(message);
var $this = this;
msgDom.find('button[value=Yes]').click(function() {
yesOption($this, requestData, gridObject);
});
msgDom.find('button[value=No]').click(function() {
noOption($this, requestData, gridObject);
});

你不能将 DOM 元素放入字符串中,因此你不能像这样在内联 Javascript 中引用它们。并且您需要在处理函数之外将局部变量绑定(bind)到 this,因为 this 由 jQuery 设置为被单击的元素。

关于javascript - jquery运行时对象状态维护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23524117/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com