将数据属性设置为按钮并链接所述属性jquery的值
Setting data attribute to button and chainging the value of said attr jquery
演示
$(document).ready(function () {
$(document).on('click', '.btn1', function (e) {
var qwe = $(this).data('id');
var asd = $(this).data('table');
console.log(qwe);
$('#btn2').attr('data-id', qwe);
$('#btn2').click();
});
$("#btn2").click(function (e) {
e.preventDefault();
var q = $(this).data('id');
var a = $(this).data('table');
console.log(q);
func1(q, a);
});
});
function func1(data, value) {
$('#text').val(data);
}
我这里有三个按钮;即btn1、btn1.1、btn2。btn1和btn1.1共享同一个类btn1我在类btn1上有一个点击事件。在btn1点击事件中,我使用$(this).data('id');
获得btn的data-id
,然后像$('#btn2').attr('data-id', qwe);
一样在btn2中设置相同的属性。点击btn2后,我运行一个函数来设置输入的值。
我的问题是这样的,当我点击btn1时,数据id被传递到btn2上,我可以看到它在开发工具中发生了变化。当我在btn1.1中再次单击时,数据id仍然传递到开发工具中的btn2上,但它在输入值中没有改变。
为什么会发生这种情况。如何解决此问题?
更新的FIDDLE
更新了btn2 中点击事件的fiddle检查
DEMO
使用data()
本身使用以下内容设置值。
$('#btn2').data('id', qwe);
不能使用attr()
设置data
,因为data-id
不是元素的有效属性。
但是,如果使用prop()
而不是attr()
,它将起作用。
$('#btn2').prop('data-id', qwe);
现在请运行下面的代码段,一旦您能够看到更新的Btn2数据值,就可以减少延迟时间。
感谢
$(document).ready(function () {
$(document).on('click', '.btn1', function (e) {
var qwe = $(this).data('id');
var asd = $(this).data('table');
$('#btn2').attr('data-id', qwe);
setTimeout(function(){
$('#btn2').click();
}, 2000);
});
$("#btn2").click(function (e) {
e.preventDefault();
var q = $(this).data('id');
var a = $(this).data('table');
func1(q, a);
});
});
function func1(data, value) {
$('#text').val(data);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="button" value="Btn 1" data-table="btn 1 table val" data-id="btn 1 id val" class="btn1" />
<input type="button" value="Btn 2" id="btn2" />
<input type="text" value="" size="50" id="text" />
相关文章:
- 变量属性jQuery
- 扫描具有相同命名和插入值的所有数据属性-jQuery
- 查找具有特定数据属性jQuery的元素
- 自定义属性jquery Datatables
- 在布尔属性JQuery之间切换
- 如何替换属性 JQuery 中的子字符串
- 如果我滚动并刷新我的网页,我的导航标题会失去其属性.JQuery
- 查找具有特定数据属性 jquery 的最接近的上一个元素
- 未捕获的类型错误:对象 [对象对象] 的属性“jQuery”不是函数
- 获取自定义属性 jQuery
- 来自输入属性 jQuery 的数组
- 使用名称属性jQuery从下拉列表中获取所选文本
- 筛选数据属性 jQuery
- 使用带有下拉选择的自定义属性jQuery选择器(取2)
- 使用带有下拉选择的自定义属性jQuery选择器
- 选择HTML<输入>缺少类型属性-jQuery的元素
- 数据属性 jQuery 的最高和最低
- 将数据属性设置为按钮并链接所述属性jquery的值
- 检查空属性jquery
- 变换属性jquery