У меня есть VS2010, C# ASP.NET веб-приложение, я написал JavaScript (на странице aspx), который отлично работает в firefox, но почти ничего не делает в Chrome или IE, это моя функция:Функция Javascript не работает в IE и chrome
<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;
}
}
кажется, что эта функция не делает ничего в IE или хром, я поместил и оповещения, чтобы отобразить некоторую информацию, но ничего не отображается в хроме или IE, что случилось с ними?
Другая проблема в последних частях, гиперссылка изначально отключена, но она включена в firefox без везения в IE или хром, в чем проблема? как я могу сделать эту функцию кросс-браузером?
[EDIT] Я положил предупреждение («1») точно после определения линии функции и я ничего не видел в хроме и IE, кажется, что эта функция не вызывается в этих браузерах, я использую r.Attributes. Добавить ("onChange", "return onRadioChange ('" + (i - 1) .ToString() + "', '1', '" + myHref + "');"); для вызова этой функции в коде, r является динамически созданной радиобуйкой.
ли вы проверить консоль на наличие ошибок? В Chrome: щелкните правой кнопкой мыши в любом месте -> Проверить элемент -> Консоль –
Переходит ли она в «all_ok»? –
попробуйте что-то вроде 'removeAttribute ('disabled');' – greut