gpt4 book ai didi

javascript - 动态添加/删除输入字段并在单独的 div 中预览字段值

转载 作者:行者123 更新时间:2023-12-03 07:08:09 24 4
gpt4 key购买 nike

我正在构建一项调查,并且需要能够在另一个 div 中预览创建的动态输入字段。

例如,我在这里创建文本输入(非常简单)并在单独的 div 中创建单选按钮:

$('#p_scnt, #p_scnt_' + i +'').live('click', function() {
$('<p><label for="p_scnts"><input type="text" size="20" id="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="removeObject">Remove</a></p>').appendTo(scntDiv);
$('<p><input type="radio" value="' + crunchValue + '">' + crunchValue + '</p>').appendTo(crunchville);
i++;
return false;
});

http://jsfiddle.net/crunchfactory/tZPg4/15947/

我不确定如何获取这些值,因此显然是“未定义”。

三件事:

我想从文本框中获取值,因为它们被输入到单独的 div 中的值中。

我想单击文本框来创建一个新的文本框,其中,a) 似乎只在前 2 个文本框中起作用,b) 如果某个框具有空值,则不要在该文本框中创建对象其他分区。

谢谢!

最佳答案

I want to get the values from the text boxes as they are typed to the values in the separate div.

我想这就是你的意思:)

HTML

<button id="btn-add">Add</button>

<div id="source"></div>
<div id="preview"></div>

Javascript

// --- Main functions --- //
function _createTextInput() {
var inputWrapper = document.createElement('div');
var inputElement = document.createElement('input');
var removeBtn = document.createElement('button');

$(removeBtn)
.html("Remove")
.addClass("btn-remove-input-wrapper");

$(inputWrapper)
.addClass('input-wrapper')
.append(inputElement)
.append(removeBtn);

return inputWrapper;
}

function _createRadioInput() {
var radioWrapper = document.createElement('div');
var radioElement = document.createElement('input');
var radioLabel = document.createElement('label');

$(radioWrapper)
.append(radioElement)
.append(radioLabel);

radioElement.type = 'radio';
radioElement.name = 'group';
return radioWrapper;
}

// --- Helper functions --- //

function getIndex(me) {
return $(me).parent().index();
}

function getRadioElement(me) {
return $('#radio div:nth-child(' + (getIndex(me) + 1) + ')');
}

// --- Event handlers --- //

$('#btn-add').click(function() {
$('#source').append(_createTextInput());
$('#radio').append(_createRadioInput());
});

$(document).on('click', '.btn-remove-input-wrapper', function() {
getRadioElement(this).remove();
$(this).parent().remove();
});

$(document).on('keyup', '.input-wrapper input', function() {
var index = getIndex(this);
var inputText = $(this).val();
getRadioElement(this).children('label').html(inputText);
});

DEMO

关于javascript - 动态添加/删除输入字段并在单独的 div 中预览字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36722847/

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