我如何在iframe中禁用的文本框(How do i disable a text box with

2019-09-24 03:58发布

场景:一个index.html的叫大笨重的页面,一切都发生在这里。 指数有10个标签(jQuery UI的选项卡)。 使用jQuery UI的手风琴部件,每个选项卡如今已,平均3-5个亚类(我被拒绝张贴图片为防止垃圾邮件,但我希望你明白的布局是什么样子)。 这里的问题开始的地方。 一个IFRAME驻留在所有这些,所以我期待在25-30 I帧在每个iframe中约5-10文本字段。 我想做的是只是简单的启用/禁用这些文本字段。

很简单,我知道这是可以这样做:

$('input[type=text]').attr("disabled", "disabled");

$('input[type=text]').removeAttr("disabled")

上索引A按钮触发功能:

 $(".frameClass").each(function () {
                console.log("i found a frame called " + this.name);
});

我如何在点击启用此连接所有输入文本字段? 我甚至尝试创建iframe中的功能,并试图从内调用它.each()

this.unlockFields();

一直没有得到我在任何地方,任何想法?

Answer 1:

你必须使用.contents()来访问元素的iframe,就像这样:

$(".frameClass").each(function () {
     $(this).contents().find('input[type=text]').attr('disabled', 'disabled');
});

应该做你想做的,因为iframe中包含一个网页,是在同一个域为主体的页面。



Answer 2:

尝试这个:

var iframes = $('iframe');
iframes.each(function(index, iframe) {
    var iframe_content = ($.browser.msie ? $(iframe.contentWindow.document) : $(iframe.contentDocument));
    iframe_content.find('input[type=text]').attr({disabled:'disabled'});
});


文章来源: How do i disable a text box within an iframe