Javascript 我有一个表单,在iframe中有单选按钮,将文本插入到父文本区域。“Undefined”出现在texarea,而不是单选按钮值
如果我制作了一个表单,并添加了一个ONSUBMIT,它会将UNDEFINED作为父窗口textarea的答案,而不是所选RADIOBUTTON的值。我不想更改javascript,因为它可以很好地与具有onclick的值一起工作,但是是否可以让脚本与相同的脚本一起工作?或者我该怎么做才能让它工作 以下是我工作的一个例子: index.html:Javascript 我有一个表单,在iframe中有单选按钮,将文本插入到父文本区域。“Undefined”出现在texarea,而不是单选按钮值,javascript,iframe,radio-button,onsubmit,Javascript,Iframe,Radio Button,Onsubmit,如果我制作了一个表单,并添加了一个ONSUBMIT,它会将UNDEFINED作为父窗口textarea的答案,而不是所选RADIOBUTTON的值。我不想更改javascript,因为它可以很好地与具有onclick的值一起工作,但是是否可以让脚本与相同的脚本一起工作?或者我该怎么做才能让它工作 以下是我工作的一个例子: index.html: <html> <head> <meta http-equiv="Content-Type" content="tex
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
<script type="text/javascript">
function hello(string){
// get the current text, add a newline if not blank, and append new
// text
var anchorText = document.getElementById('myAnchor').value;
if(anchorText !== "") anchorText += '\n';
anchorText += string;
document.getElementById('myAnchor').value=anchorText;
}
</script>
<title>joubadou</title>
</head>
<body>
<form>Cart<br>
<br>
<textarea rows="10" id="myAnchor"></textarea></form>
<iframe src="radiobuttontest.html" height="300"></iframe>
</body>
</html>
radiobuttontest.html:
<html>
<head>
<title>Title</title>
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
</head>
<body>
<br>
<form id="myForm" action="" method="get"
onsubmit="parent.hello()">If
you want a blue
car you can choose<br>
<br>
<input name="sex" value="Bensin" checked="checked"
type="radio">Bensin<br>
<input name="sex" value="Diesel" type="radio">Diesel<br>
<br>
<input value="add to cart"
onclick="parent.hello('Blue car')" type="submit"></form>
<br>
</body>
</html>
如果你能帮我,我会穿得很好 这是用户单击“添加到购物车”时发生的情况: 输入的onclick触发,并且anchorText的值为 改为“蓝色汽车”,传递给hello onsubmit从表单中激发,anchorText的值为 已更改为未定义,因为未传递字符串 要解决此问题,只需从表单中删除onsubmit属性,并传递单选按钮而不是字符串,例如: 将此添加到hello: 然后按如下方式传递单选按钮:
<input value="add to cart" onclick="parent.hello(document.getElementsByName('sex'));" ... />
请注意,当字符串作为参数传递时,仍然可以使用hello来处理字符串
。这个提琴只是一个例子,展示了代码在一个文档中是如何工作的。我只是不知道把它放在哪里,而且我在探索方面还没有运气,所以我必须问一下,hello的开头在哪里。我是个初学者,所以我不太清楚。我首先用safari打开了这个jaFiddle演示,我主要使用safari,但它不起作用。Still object NodeList取代了Bensin或Diesel,但后来我用Firefox打开了它,一切都很顺利。有没有办法让Safari也能用?谢谢你的耐心@卡胡,对不起,我对狩猎和安塔尔提斯一样熟悉,我不知道。。。似乎字符串是从循环中未加工出来的。也许将字符串重命名为str会有所帮助?您还可以在for..n循环中的if之前检查console.logstring[n]。
<input value="add to cart" onclick="parent.hello(document.getElementsByName('sex'));" ... />