Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使函数在页面加载后运行并编辑标签';没有ID或类的innerHTML_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使函数在页面加载后运行并编辑标签';没有ID或类的innerHTML

Javascript 使函数在页面加载后运行并编辑标签';没有ID或类的innerHTML,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试设计基于教学的网站,我只能编辑以下相关字段: 所有页面上标题标记内的HTML/JavaScript代码片段 网站上所有页面的自定义CSS 我有jQuery 虽然这是相当有限的,我设法过得去。但是,我遇到了一个问题: 我正在尝试编辑此对象的文本: 基本上,我正在尝试编辑两者的内部HTML <label for="subject">Subject</label> <label for="student_message"

我正在尝试设计基于教学的网站,我只能编辑以下相关字段:

所有页面上标题标记内的HTML/JavaScript代码片段

网站上所有页面的自定义CSS

我有jQuery

虽然这是相当有限的,我设法过得去。但是,我遇到了一个问题: 我正在尝试编辑此对象的文本:

基本上,我正在尝试编辑两者的内部HTML

<label for="subject">Subject</label>
<label for="student_message">Message</label>
主题
消息
从“主题”到“主题”,从“信息”到“主题”

这些标签没有类和ID,它们唯一的属性是“for”属性。 现在,如果有帮助,这些特定标签位于这些div中:

<form id="contact-form" accept-charset="UTF-8" method="post">
    <div class="row form-group">
            <label for="subject">Subject</label>
            <label for="student_message">Message</label>
    </div>
</form>

主题
消息
这些是“联系人表格”分区内站点上唯一的标签

因此,问题是:

  • 我需要从HEAD标签访问这些标签,它们位于 身体标签。所以我想我需要一个等待函数来运行 页面/表单加载后
  • 我只能将这些标签与其他标签区分开来 其他人使用其属性和其父div的属性
我的问题是:

  • 如何创建一个在页面加载后运行但不会使整个页面冻结的函数
  • 在该函数中,如何使用对象的属性访问对象
  • 仅仅因为它看起来很重要,我还不知道,我如何访问对象中的对象

  • 非常感谢:)

    您说过可以使用jQuery,所以将代码封装在
    $(文档)中。就绪(
    确保加载正文。然后使用jQuery选择器按属性查找对象:

    $(document).ready(function () {
      $("label[for='subject']").html('נושא');
      $("label[for='student_message']").html('הודעה');
    });
    

    可以相对于可以直接找到的元素找到感兴趣的元素,即通过id/class标识的元素

    例如

    jQuery(function($) {
        const $formGroup = $('#contact-form div.form-group').eq(0);
        $formGroup.find('label').eq(0).text('נושא');
        $formGroup.find('label').eq(1).text('הודעה');
    });
    
    或者,如果你不想做作业

    jQuery(function($) {
        $('#contact-form div.form-group').eq(0)
        .find('label').eq(0).text('נושא')
        .next('label').text('הודעה');
    });
    

    按标记和属性选择,对于html
    $('label[for=“subject”]').html(yourhtml)
    ,对于text
    $('label[for=“subject”]').text(yourtext)
    嗯,显然我已经知道解决方案,但问题不在于我的代码,而在于“html/JavaScript代码片段在所有页面的head标记中。”并非在所有页面上都有效。您向我发送的此代码片段表明问题不在于我们的代码,而在于平台。我将联系teachable的支持人员告诉他们。谢谢:)