gpt4 book ai didi

javascript - 需要帮助理解 jQuery .val() 函数

转载 作者:行者123 更新时间:2023-11-28 03:01:26 24 4
gpt4 key购买 nike

alert("data going into $hidden: " + selected.data[1]);

hidden.val(selected.data[1]);

alert("data now in $hidden: " + $hidden.val());

上面最后一行中的 $hidden.val() 返回未定义的原因是什么?我已经验证 selected.data[1] 包含一个整数值。

编辑#1:每个评论的一些附加上下文:($hidden 是隐藏的输入字段)

$.fn.extend({
autocomplete: function(urlOrData, hidden, options) {
var isUrl = typeof urlOrData == "string";
var $hidden = $(hidden);
options = $.extend({}, $.Autocompleter.defaults, {
url: isUrl ? urlOrData : null,
data: isUrl ? null : urlOrData,
delay: isUrl ? $.Autocompleter.defaults.delay : 10,
max: options && !options.scroll ? 10 : 150
}, options);

// if highlight is set to false, replace it with a do-nothing function
options.highlight = options.highlight || function(value) { return value; };

// if the formatMatch option is not specified, then use formatItem for backwards compatibility
options.formatMatch = options.formatMatch || options.formatItem;

return this.each(function() {
new $.Autocompleter(this, options, $hidden);
});

还有...

$.Autocompleter = function(input, options, $hidden) {
//...

function selectCurrent() {
var selected = select.selected();
if (!selected)
return false;

var v = selected.result;
previousValue = v;

if (options.multiple) {
var words = trimWords($input.val());
if (words.length > 1) {
v = words.slice(0, words.length - 1).join(options.multipleSeparator) + options.multipleSeparator + v;
}
v += options.multipleSeparator;
}


alert("data going into $hidden: " + selected.data[1]);

$hidden.val(selected.data[1]);

alert("data now in $hidden: " + $hidden.val());

编辑#2:更多详细信息......我尝试在具有多个文本框控件(每个控件都实现自动完成)的表单上使用 jQuery 自动完成扩展。每个文本框旁边的表单上有一个单独的按钮,用于将表单提交给处理函数,该函数需要查找所选项目的值并将其保存到数据库。我想到的方法是在表单上包含一个隐藏字段来保存所选值。

最佳答案

谢谢保罗·贝甘蒂诺。我发现我没有在隐藏字段 id 前面用 # 传递初始隐藏,因此 $hidden 永远不会正确设置。对我来说调试很困难,因为自动完成功能作为嵌入式资源位于 ascx 控件内。一旦我确保隐藏的值包括 # 它就可以正常工作。

关于javascript - 需要帮助理解 jQuery .val() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/603040/

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