Javascript函数在IE和chrome中不起作用
我有一个VS2010,C#ASP.NET web应用程序,我编写了一个JavaScript(在aspx页面中),它在firefox中运行完美,但在chrome或IE中几乎什么都不做,这是我的功能:Javascript函数在IE和chrome中不起作用,javascript,Javascript,我有一个VS2010,C#ASP.NET web应用程序,我编写了一个JavaScript(在aspx页面中),它在firefox中运行完美,但在chrome或IE中几乎什么都不做,这是我的功能: <script type="text/javascript" > function onRadioChange(rowIndex, value, myHref) { var q = document.getElementById('HF')
<script type="text/javascript" >
function onRadioChange(rowIndex, value, myHref) {
var q = document.getElementById('HF').value.toString();
var q2 = q.split(',');
var new_HF = '';
for (var i = 0; i < rowIndex; i++) {
new_HF += q2[i] + ',';
}
new_HF += value.toString() + ',';
for (var j = rowIndex; j < q2.length - 1; j++) {
if (j > rowIndex) {
new_HF += q2[j] + ',';
}
}
document.getElementById('HF').value = new_HF;
//user has voted all questions? enable hpAccept so that he can go to next questionnaire
var q5 = new_HF.split(',');
var all_ok = true;
for (var g = 0; g < q5.length; g++) {
if (q5[g] == '0')
all_ok = false;
}
if (all_ok) {
document.getElementById('hpAccept').disabled = false;
document.getElementById('hpAccept').href = myHref;
}
}
函数onRadioChange(行索引、值、myHref){
var q=document.getElementById('HF').value.toString();
var q2=q.split(',');
var new_HF='';
对于(var i=0;i行索引){
新的_-HF+=q2[j]+',';
}
}
document.getElementById('HF')。value=new\u HF;
//用户已对所有问题进行投票?启用hpAccept以便他可以转到下一个问卷
变量q5=新的高频分割(',');
var all_ok=真;
对于(var g=0;g
似乎这个功能在IE或chrome中没有任何作用,我放置并警告显示一些信息,但chrome或IE中没有显示任何信息,它们有什么问题
另一个问题是在最后部分,超链接最初是禁用的,但它在firefox中启用了IE或chrome中没有运气,这里有什么问题?如何使此功能跨浏览器运行
[EDIT]我在函数定义行后面放了一个警报('1'),在chrome和IE中我什么也没看到,似乎这些浏览器中没有调用这个函数,我使用了r.Attributes.Add(“onChange”,“return onRadioChange”(“+(I-1).ToString()+”,“1”,“+myHref+”;”);对于在codebehind中调用此函数,r是一个动态创建的单选按钮。您不应该禁用
a
标记
以下元素支持禁用属性:按钮、输入、,
OPTGROUP、OPTION、SELECT和TEXTAREA
资料来源:
这就是为什么document.getElementById('myLink').disabled
返回undefined
重复的
解决方案:对于单选按钮,使用
onClick
事件而不是onChanged
是否检查控制台是否有错误?在Chrome中:右键单击任意位置->检查元素->控制台,类似于removeAttribute('disabled')代码>似乎它在所有之前都出现了一些错误。\u好的,我应该在哪里使用removeattribute?我在函数定义行后面放了一个警报('1'),在chrome和IE中没有看到任何东西,似乎在这些浏览器中没有调用这个函数,我使用r.Attributes.Add(“onChange”,“return onRadioChange”('”+(I-1).ToString()“','1','“+myHref+”);”;对于在codebehind中调用此函数,r是一个动态创建的RadioButton,您在控制台中遇到的错误是什么?谢谢,我应该如何更改我的函数?正如我所说的,似乎根本没有调用此函数,甚至函数的上部在IE(8)中也不做任何操作和chrome,从codebehind:r.Attributes.Add调用函数有什么问题吗(“onChange”、“returnonRadioChange”(“+(i-1).ToString()+”、“1”、“+myHref+”);”);您能查看页面的HTML源代码并将其包含在问题中吗?需要带有呈现的“r”控件的部分。