jQuery将data-role =“none”添加到<select>标签</select>

时间:2013-04-10 19:27:23

标签: jquery jquery-mobile

我正在使用jQuery mobile并且需要添加data-role =&#34; none&#34;到页面上的所有<select>标记

不幸的是我无法控制如何生成这些标记,是否有一个jQuery命令可以用来在页面加载时自动添加它?

更新

尝试每个人的建议后,数据角色=&#34;无&#34;属性确实被正确添加,但jQuery移动仍然处理事情。有没有办法在jQuery默认关闭所有表单处理?

5 个答案:

答案 0 :(得分:4)

$('select').attr('data-role', 'none');

答案 1 :(得分:2)

$(document).bind('pageinit', function() {
    $('select').attr('data-role', 'none');
});

$(document).bind('pageinit', function() {
    $('select').data('role', 'none');
});

最后一个不会更改属性,而是将值存储在jQuery data()中。

答案 2 :(得分:2)

因此,当页面加载并将data-role =“none”添加到选择标记时,您可以添加此脚本:

$(document).ready(function(){
   $('select').data('role','none');
});

答案 3 :(得分:2)

这是一个选项,如果你有来自服务器端的值,你不想干扰,如果设置:

$("select").each(function (i, e) {
    if(typeof $(e).attr("data-role") === "undefined") {
        $(e).data("role", "none");
    }
});

希望这有帮助。

关于您的第二个问题,您可能在您的mobileinit事件中遗漏了这一行:

$.mobile.ignoreContentEnabled = true

答案 4 :(得分:1)

页面加载后使用jQuery.attr。

$(function(){
   $('select').attr('role-data', 'none');
});