通过jquery将单选按钮的值设置为距离最近的输入文本的文本
Set the value of a radio button to be the text from the closest input text via jquery
我有一个动态添加表单元素的表单。我要添加的元素是一个文本字段和一个单选按钮。现在,我希望所选单选按钮的值是用户在相邻输入框中键入的文本。这是JS:
var $node = "";
var varCount=0;
$('body').on('click', '.removeVar', function(){
$(this).parent().remove();
varCount--;
});
$('#addfld').on('click', function(){
varCount++;
$node = '<label for="losfldlbl[]">Field Name '+varCount+': </label>' +
'<input type="text" name="losfldlbl[]" id="losfldlbl[]" title="Custom field name cannot be blank" required=true placeholder="Field name'+varCount+'"/>'+
'Is this the value field? <input type="radio" name="losvaluefld[]" id="losvaluefld[]" value=false /> '+
'<span class="removeVar label label-important"><a id="removeFld" href="#" title="Click here to remove this field"><i class="icon-minus icon-white"></i></a></span>';
$(this).parent().before($node);
});
$('input:radio').click(function() {
$(this).attr('value', $(this).prev().attr("value"));
alert($(this).val());
});
这是我的HTML:
<form id='myForm'>
click on the yellow button custom fields <span class='label label-warning'><a id='addfld' href='#' title='Click here to add a new field'><i class='icon-plus icon-white'></i></a></span>
</form>
我在这里分享了一个JsFiddle。问题是我无法获得从输入文本传递到单选按钮值的值。
问题是,在页面上存在单选按钮之前,您选择了单选按钮并附加了事件处理程序。
我建议使用on
来为将来添加的单选按钮委派事件:
$(document.body).on('click', 'input:radio', function() {
$(this).attr('value', $(this).prev().attr("value"));
alert($(this).val());
});
更新的例子: http://jsfiddle.net/Pyj7K/2/
相关文章:
- 如何使用jquery在填充自动完成的值后使文本框只读
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 用程序搜索JQuery数据表中的文本
- jQuery匹配JSON对象的部分文本
- onkeyup无法动态创建多个文本区域
- 如何在下面的ES6循环中获得前面的文本
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 借助asp.net验证或java脚本对多个文本进行验证
- 无法在ajaxStart中更改跨度文本
- 高亮显示时编辑文本大小和颜色
- jquery中的文本框验证
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- Sails.js:同时发布文本输入和一个文件
- 当鼠标悬停在文本中的单词上时显示警报
- 基于编辑距离的javascript文本相似度百分比算法
- 滚动一定距离后弹出文本不工作
- 通过jquery将单选按钮的值设置为距离最近的输入文本的文本
- 谷歌地图,拖动路线后距离文本消失