gpt4 book ai didi

javascript - 对象未传递给 jQuery 对话框 OnSubmit 处理程序

转载 作者:行者123 更新时间:2023-12-03 10:12:59 27 4
gpt4 key购买 nike

我有以下 HTML:

<div id="referenceResolverDialog" title="Resolve IDs">
<p>Please fill in a comma separated list of IDs.</p>
<form>
<fieldset>
<textarea name="referenceResolverTextArea" id="referenceResolverTextArea" rows="6" cols="54"></textarea>
</fieldset>
</form>
</div>

我创建了 jQuery 对话框,如下所示:

var configParams = {
// some config properties
textAreaSelector: '#referenceResolverTextArea',
// some other config properties
}

var form, dialog;

dialog = $(configParams.dialogSelector).dialog({
autoOpen: false,
height: 220,
width: 350,
modal: true,
buttons: {
"Resolve": ResolveDialogData,
Cancel: function () {
dialog.dialog("close");
}
},
close: function () {
form[0].reset();
dialog.dialog("close");
}
});

form = dialog.find("form").on("submit", function (event) {
event.preventDefault();
ResolveDialogData(configParams);
});

问题是 configParams 作为新对象传递,而不是我已有的对象。在 ResolveDialogData() 方法中,我有以下内容:

function ResolveDialogData(configParams) {
alert(configParams); // returns [object Object]
alert(configParams.textAreaSelector); // returns undefined
}

我做错了什么?

最佳答案

如果您从“解决”按钮点击该回调,您的 configParams 参数将代表对话框传递的 Event 对象。

改变

buttons: {
"Resolve": ResolveDialogData,
Cancel: function () {
dialog.dialog("close");
}
},

buttons: {
"Resolve": function(e) { // e is the object you were ending up with before
ResolveDialogData(configParams);
},
Cancel: function () {
dialog.dialog("close");
}
},

关于javascript - 对象未传递给 jQuery 对话框 OnSubmit 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30025785/

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