javascript - 如何使用 jQuery 插入字段?

标签 javascript jquery html css

我试图在片段中实现这段代码,目前我只处理按钮标签,所以当我点击这个按钮时,它会添加一个小公式,允许在单击右侧的“确定”。但是,即使我单击“确定”也没有任何反应,通常应该出现一个标签,其中的名称插入到文本字段“标签”中。

谁知道问题出在哪里?提前谢谢你。

$(function(){
	$('button').click(function(){
		var typeButton = $(this).text();
		if(typeButton=='Label'){
			$('hr').remove();
			$('#formule').remove();
			$('#droite').append('<hr>');
			var elementLabel = 'Texte du label';
			var elementTexte = '<input type="text" name="label"/>';
			var elementButton = '<button>OK</button>';
			var elementSpan = elementLabel+' '+elementTexte+' '+elementButton;
			var elementDiv = '<div id="formule">'+elementSpan+'</div>'
			$(elementDiv).insertAfter('hr');
		};
		if(typeButton=='OK'){
		    $('hr').remove();
			var elementNom = $('input[name=label]').val();
			var elementSpan = '<span>'+elementNom+'</span>';
			$('#formule').remove();
			$('#gauche').append('elementSpan');
		};
	});
});
body {
        margin: 0;
      }
      #gauche {
        float: left;
        width: 70%;
        height: 1000px;
        background-color: #EFECCA;
      }
      #droite {
        background-color: #CEFFF8;
        height: 1000px;
        padding : 10px;
        padding-left: 71%;
      }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<div id="gauche">
</div>
<div id="droite">
      Utilisez ces boutons pour créer votre formulaire<br><br>
      <button>Label</button>
      <button>Zone de texte</button>
      <button>Bouton</button>
</div>

最佳答案

您需要使用文档的 on 事件处理程序附件来委托(delegate)动态添加的元素。

$(document).on('click', 'button', function () {
        var typeButton = $(this).text();
        if (typeButton == 'Label') {
            $('hr').remove();
            $('#formule').remove();
            $('#droite').append('<hr>');
            var elementLabel = 'Texte du label';
            var elementTexte = '<input type="text" name="label"/>';
            var elementButton = '<button>OK</button>';
            var elementSpan = elementLabel + ' ' + elementTexte + ' ' + elementButton;
            var elementDiv = '<div id="formule">' + elementSpan + '</div>'
            $(elementDiv).insertAfter('hr');
        };
        if (typeButton == 'OK') {
            $('hr').remove();
            var elementNom = $('input[name=label]').val();
            var elementSpan = '<span>' + elementNom + '</span>';
            $('#formule').remove();
            $('#gauche').append(elementSpan);
        };
    });

关于javascript - 如何使用 jQuery 插入字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38547521/

相关文章:

javascript - 无法理解这段 javascript 代码如何控制流程?

javascript - 按值删除数组元素的最佳方法

javascript - 如何在谷歌仪表板表中为 TR 赋值

javascript - 如何在最右边的文本框中禁用非整数输入?

javascript - 在 ipad 中打开时网站会缩放。点击某些按钮时也会放大更多

html - 如何通过调整现有 CSS 来限制可用性日历的大小?

javascript - 谷歌地图 V3 : Multiple maps on a page resulting in missing markers (DEBUG)?

javascript - 如何在用户仍在键入时在同一页面上使用 JavaScript 搜索?

javascript - jQuery UI 对话框仅打开一次

php - 如果文本区域有内容则自动展开 div