<script>
var a=Math.floor((Math.random() * 10) + 1)
//alert(a); (For testing)
</script>
<object data='http://example.com/'+a+'.php' height='100%' type='text/html' width='100%'/>
我想随机调用php的名字就像这样。谢谢。我是html的新手。 我在博客html编辑器中尝试这个。
答案 0 :(得分:1)
您无法在
JavaScript
中使用DOM API连接HTML
个变量。将id
属性分配给element
并设置data
属性。
var a = Math.floor((Math.random() * 10) + 1);
var obj = document.getElementById('obj');
obj.setAttribute('data', 'http://example.com/' + a + '.php');
console.log(obj.outerHTML); //To demonstrate
<script src="http://gh-canon.github.io/stack-snippet-console/console.min.js"></script>
<object id='obj' height='100%' type='text/html' width='100%'></object>
答案 1 :(得分:0)
我建议使用DOM Api
,如下所示:
var generaterandom = function() {
var random = Math.floor((Math.random() * 10) + 1);
var obj = document.createElement("object");
obj.setAttribute("data", 'http://example.com/' + random + '.php');
obj.setAttribute("type", 'text/html');
obj.setAttribute("height", '100%');
obj.setAttribute("width", '100%');
return obj;
}
您可以像这样使用此方法:
var ob = generaterandom()
document.write(ob.outerHTML)
var generaterandom = function() {
var random = Math.floor((Math.random() * 10) + 1);
var obj = document.createElement("object");
obj.setAttribute("data", 'http://example.com/' + random + '.php');
obj.setAttribute("type", 'text/html');
obj.setAttribute("height", '100%');
obj.setAttribute("width", '100%');
return obj;
}
object {
background:red;
border:1px solid blue;
}
<input onclick="document.body.appendChild(generaterandom())" value="append" type="button">
答案 2 :(得分:0)
你想要在这里完成的任何事情都不清楚,但我认为你需要将下面的HTML代码输出到文档中,这样才能做到这一点
<script type="text/javascript">
var a=Math.floor((Math.random() * 10) + 1)
</script>
<object data='http://example.com/'<script> document.write(a);</script>'.php' height='100%' type='text/html' width='100%'/>
如果你是新手并且想要学习,那么请记住明确地告诉浏览器他需要使用的确切类型的脚本
<script type="text/javascript">
,与<script>
不同。因为javascript旁边有很多脚本语言。
另一件事,请勿使用&#34; 1.html&#34;等文件名。或&#34; 23.php&#34;这些作为变量名称无效,这将在提前编程时出现问题,使用文件名来破坏变量命名规则,如&#34; a1.php&#34; ,&#34; a2.php&#34;所以上面的代码会改变,如
<object data='http://example.com/a'+<script> document.write(a);</script>'+.php' height='100%' type='text/html' width='100%'/>
(连词 - html中不需要+标记)
-------------------------如果你在博客中使用它---------------- -
<script>
var a=Math.floor((Math.random() * 10) + 1)
document.write("<object width='100%' height='100%' type='text/html' data='http://www.example.com/"+a+".php'></object>");
</script>
会做到这一点。