Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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 脚本未在框架中打开的页面上运行_Javascript_Html - Fatal编程技术网

Javascript 脚本未在框架中打开的页面上运行

Javascript 脚本未在框架中打开的页面上运行,javascript,html,Javascript,Html,当我按下按钮时,我有一个运行脚本的页面。当页面在单独的窗口中打开时,它可以工作,但是当我在另一个页面的框架中打开该页面时,当我单击同一个按钮时,什么也没有发生。有什么问题吗 代码: 输入: 输出: 鲁莱扎! 脚本在head中声明: <script src="probleme.js"></script> 正如所说,当单独打开时,它可以正常运行,但在框架中它不工作。(我用铬) 还有剧本: function read(params) { var mytext= do

当我按下按钮时,我有一个运行脚本的页面。当页面在单独的窗口中打开时,它可以工作,但是当我在另一个页面的框架中打开该页面时,当我单击同一个按钮时,什么也没有发生。有什么问题吗

代码:


输入:
输出:

鲁莱扎!
脚本在head中声明:

<script src="probleme.js"></script>

正如所说,当单独打开时,它可以正常运行,但在框架中它不工作。(我用铬) 还有剧本:

function read(params)
{
var mytext= document.getElementById("in").value;
var i=0,l=0;
while(i<mytext.length)
{
    var nr=0;
    while(mytext[i]>='0'&&mytext[i]<='9'&&i<mytext.length)
    {
        nr=nr*10+(mytext[i]-'0');
        i++;
    }
    params[l++]=nr;
    while(!(mytext[i]>='0'&&mytext[i]<='9')&&i<mytext.length) 
    {
        if((mytext[i]>='a'&&mytext[i]<='z')||(mytext[i]>='A'&&mytext[i]<='Z')) return 0;
        i++;
    }
}
}
function rucsac()
{
var v = new Array();
document.getElementById("out").value="";
if(read(v)==0)
{
 document.getElementById("out").value="Datele de intrare contin caractere necorespunzatoare!";
 return 0;
}
if(v.length===0)
{
document.getElementById("out").value="Cititi datele inainte de rulare!";
 return 0;
}
var n=v[0],g=v[1];
if(v.length<n+2)
{
document.getElementById("out").value="Date incomplete!";
 return 0;

}
var i,j,l=1,MAX=0;
var w= new Array(100001), p=new Array(100001), pf=new Array(100001).fill(0);
   for(i=1;i<=n;i++)
        {
    w[i]=v[++l];
    p[i]=v[++l];
    }

    for(i=1;i<=n;i++)
        for(j=g-w[i];j>=0;j--)
          if(pf[j+w[i]]<pf[j]+p[i])
    {
        pf[j+w[i]]=pf[j]+p[i];
        if(pf[j+w[i]]>MAX) MAX=pf[j+w[i]];
    }
document.getElementById("out").value+=MAX;
}
函数读取(参数)
{
var mytext=document.getElementById(“in”).value;
变量i=0,l=0;
而(i='0'&&mytext[i]也在iframe标记中声明您的
。我相信它目前位于主网页的
标记中


您看到这个问题是因为父JS无法访问iframe内的事件。您应该将脚本包含在iframe的源代码中。

共享您的
Probleme.JS
file code.p.S-框架在HTML5中,不鼓励使用。这是一个iframe,我知道这是允许的…首先看看这里-Second-正如@piarte X所写,使用帧是危险的(xss问题),因此尽可能避免使用它们,“在iframe标记内”是一个非常误导性的说法。这意味着
是无用的
function read(params)
{
var mytext= document.getElementById("in").value;
var i=0,l=0;
while(i<mytext.length)
{
    var nr=0;
    while(mytext[i]>='0'&&mytext[i]<='9'&&i<mytext.length)
    {
        nr=nr*10+(mytext[i]-'0');
        i++;
    }
    params[l++]=nr;
    while(!(mytext[i]>='0'&&mytext[i]<='9')&&i<mytext.length) 
    {
        if((mytext[i]>='a'&&mytext[i]<='z')||(mytext[i]>='A'&&mytext[i]<='Z')) return 0;
        i++;
    }
}
}
function rucsac()
{
var v = new Array();
document.getElementById("out").value="";
if(read(v)==0)
{
 document.getElementById("out").value="Datele de intrare contin caractere necorespunzatoare!";
 return 0;
}
if(v.length===0)
{
document.getElementById("out").value="Cititi datele inainte de rulare!";
 return 0;
}
var n=v[0],g=v[1];
if(v.length<n+2)
{
document.getElementById("out").value="Date incomplete!";
 return 0;

}
var i,j,l=1,MAX=0;
var w= new Array(100001), p=new Array(100001), pf=new Array(100001).fill(0);
   for(i=1;i<=n;i++)
        {
    w[i]=v[++l];
    p[i]=v[++l];
    }

    for(i=1;i<=n;i++)
        for(j=g-w[i];j>=0;j--)
          if(pf[j+w[i]]<pf[j]+p[i])
    {
        pf[j+w[i]]=pf[j]+p[i];
        if(pf[j+w[i]]>MAX) MAX=pf[j+w[i]];
    }
document.getElementById("out").value+=MAX;
}