小编Fin*_*ler的帖子

在 iframe 预订表单中选择元素时出现问题

我正在尝试选择此 iframe 预订表单中的电子邮件字段。我最终想对该字段做其他事情,但现在作为测试,我只想选择元素并更改占位符。

收到此错误,所以我没有正确选择它:Uncaught TypeError: Cannot set property 'placeholder' of null at HTMLButtonElement.changeCopy

您可以在此处查看我的代码的实时版本,并在单击顶部的按钮时在控制台中看到错误:https : //finnpegler.github.io/cart_recover/

我还将代码作为下面的片段包含在内,但它会引发与跨源框架不同的错误。

var iframe = document.getElementById("booking-widget-iframe");
var field = iframe.contentWindow.document.querySelector("booking[email]");

function changeCopy() {
field.placeholder = "hello";
}

document.getElementById("button").addEventListener("click", changeCopy)
Run Code Online (Sandbox Code Playgroud)
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test site for Cart Recover Tool</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" media="screen" href="stylesheet.css" />
<link href="https://fonts.googleapis.com/css?family=Bree+Serif|Open+Sans&display=swap" rel="stylesheet">
<link rel="icon" href="favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0">  
</head>
<body>
Clicking this button should change the placeholder text in the email field below
<button …
Run Code Online (Sandbox Code Playgroud)

javascript iframe dom

8
推荐指数
1
解决办法
214
查看次数

标签 统计

dom ×1

iframe ×1

javascript ×1