jаvаsсriрt сводит с ума
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
jаvаsсriрt сводит с ума - 2011-02-04 11:17:26.740000
|
|
|
nekiii
Сообщений: 5
Оценки: 0
Присоединился: 2010-05-31 14:21:12.753333
|
Я создал оболочку на C# , которая с помощью объекта WebBrowcer отображает HТМL документ Этот документ выполняет сценарий jаvаsсriрt (простой тест) Когда запускаю созданную программу ВЫВОДИТСЯ ОШИБКА. Если я этот HТМL документ открываю через браузер то ошибка сценария не происходит! Как исправить эту проблему??
<sсriрt LANGUAGE="jаvаsсriрt">
// Заголовок страницы (h1)
var title = 'Срез полученных знаний';
// Подзаголовок (h2)
var subtitle = "Этот тест позволяет оценить знания";
// Это ваши вопросы
var questions=[
{
text: "Что такое <b>объект</b> с точки зрения программирования?:",
answers: ["философская категория, если определять её в пределах эпистемологии, выражающая нечто, существующее в реальной действительности (то есть независимо от сознания) — предмет, явление или процесс, на которые направлена предметно-практическая и познавательная деятельность субъекта (наблюдателя).",
"некоторая сущность в виртуальном пространстве, обладающая определённым состоянием и поведением, имеет заданные значения свойств (атрибутов) и операций над ними (методов)",
"это тип, описывающий устройство объектов."],
correctAnswer: 1 // нумерация ответов с нуля!
},
{
text: "Эстетические чувства:",
answers: ["даются человеку от рождения",
"формируются в первые 3-4 года жизни",
"наличествуют не у всех людей, а развиваются индивидуально"],
correctAnswer: 1
},
{
text: "Для чего необходима функция <b>Val</b>? ",
answers: ["возвращает числа в строке в качестве неполных значений соответствующего типа",
"возвращает числа, содержащиеся в строке в качестве числовых значений соответствующего типа",
"возвращает числа, содержащиеся в строке в качестве строковых данных"],
correctAnswer: 1
},
{
text: "Что такое <b>класс</b> с точки зрения программирования?:",
answers: ["некоторая сущность в виртуальном пространстве, обладающая определённым состоянием и поведением, имеет заданные значения свойств (атрибутов) и операций над ними (методов)",
"это объект-образец, по образу и подобию которого создаются другие объекты.",
"это тип, описывающий устройство объектов.",],
correctAnswer: 2 // нумерация ответов с нуля!
},
];
var yourAns = new Array;
var score = 0;
function Engine(question, answer) {yourAns[question]=answer;}
ball=0;
function Score(){
var answerText = "Результат:\n";
for(var i = 0; i < yourAns.length; ++i){
var num = i+1;
answerText=answerText+"\n Вопрос №"+ num +"";
if(yourAns[i]!=questions[i].correctAnswer){
answerText=answerText+"\n Правильный ответ: " +
questions[i].answers[questions[i].correctAnswer] + "\n";
}
else{
answerText=answerText+": Верно! \n";
++score;
ball=ball+2;
}
}
if(ball<=30)
{
answerText=answerText+"\nВсего правильных ответов: "+score+" из 30\nКоличество баллов: "+ball+"\nВаша оценка:"+"2";
}
if(ball>=32 & ball<=44)
{
answerText=answerText+"\nВсего правильных ответов: "+score+" из 30\nКоличество баллов: "+ball+"\nВаша оценка:"+"3";
}
if(ball>=46 & ball<=56)
{
answerText=answerText+"\nВсего правильных ответов: "+score+" из 30\nКоличество баллов: "+ball+"\nВаша оценка:"+"4";
}
if(ball>=58 & ball<=60)
{
answerText=answerText+"\nВсего правильных ответов: "+score+" из 30\nКоличество баллов: "+ball+"\nВаша оценка:"+"5";
}
confirm(answerText);
yourAns = new Array;
score = 0;
ball=0;
clearForm("quiz");
}
function clearForm(name) {
var f = document.forms[name];
for(var i = 0; i < f.elements.length; ++i) {
if(f.elements[i].checked)
f.elements[i].checked = false;
}
}
</sсriрt>
<h1><sсriрt>document.write(title)</sсriрt></h1>
<h2><sсriрt>document.write(subtitle)</sсriрt></h2>
<FORM name="quiz" >
<ol>
<sсriрt>
for(var q=0; q<questions.length; ++q) {
var question = questions[q];
var idx = 1 + q;
document.writeln('<li><span class="quest">' + question.text + '</span><br/>');
for(var i in question.answers) {
document.writeln('<input type=radio name="q' + idx + '" value="' + i +
'" оnclick="Engine(' + q + ', this.value)">' + question.answers[i] + '<br/>');
}
}
</sсriрt>
</ol>
<input type=button оnclick="Score()" value="Проверить результат">
</FORM>
КОНКРЕТНО ошибка происходит в этой области:
document.writeln('<li><span class="quest">' +question.text+ '</span><br/>'); question.text есть null или не является объектом как исправить эту ошибку и если нельзя исправить скажите что можно сделать чтобы ошибка не выдавалась! потому что сам скрипт работает правильно как и должен ПОМОГИТЕ я полный ламер в jаvаsсriрt
|
|
|
RE: JavaScript сводит с ума - 2011-02-04 11:25:26.470000
|
|
|
Sрam
Сообщений: 2863
Оценки: 372
Присоединился: 2009-01-16 15:23:43.276666
|
quote:
document.writeln('<li><span class="quest">' + question.text + '</span><br/>'); Как я понял это имя файла… но вот вопрос зачем оно здесь? Убери это из кода…
|
|
|
RE: JavaScript сводит с ума - 2011-02-04 11:30:31.196666
|
|
|
nekiii
Сообщений: 5
Оценки: 0
Присоединился: 2010-05-31 14:21:12.753333
|
quote:
ORIGINAL: Sрam quote:
document.writeln('<li><span class="quest">' + question.text + '</span><br/>'); Как я понял это имя файла… но вот вопрос зачем оно здесь? Убери это из кода… нет это не имя файла это текст вопроса который выводится в форме! я убираю ошибка появляется в другом месте! где выводятся ответы
document.writeln('<input type=radio name="q' + idx + '" value="' + i +
'" оnclick="Engine(' + q + ', this.value)">' + question.answers[i] + '<br/>');
question.answers и та же самая ошибка
|
|
|
RE: jаvаsсriрt сводит с ума - 2011-02-04 11:42:32.143333
|
|
|
Sрam
Сообщений: 2863
Оценки: 372
Присоединился: 2009-01-16 15:23:43.276666
|
Попробуй question сразу не присваивать все поля записи, а 2-м переменным присвоить question.text и question.answers
|
|
|
RE: jаvаsсriрt сводит с ума - 2011-02-04 11:45:38.296666
|
|
|
nekiii
Сообщений: 5
Оценки: 0
Присоединился: 2010-05-31 14:21:12.753333
|
quote:
ORIGINAL: Sрam Попробуй question сразу не присваивать все поля записи, а 2-м переменным присвоить question.text и question.answers спасибо огромное! ну я написал что я ламер! я сижу я вообще не догоняю этот код(((( я не понял что надо попробовать
|
|
|
RE: jаvаsсriрt сводит с ума - 2011-02-04 11:47:58.903333
|
|
|
nekiii
Сообщений: 5
Оценки: 0
Присоединился: 2010-05-31 14:21:12.753333
|
ой у меня чот получилось теперь ошибка не выводится но выводятся только первый вопрос) это типа мне для всех 30 вопросов нужно сделать массив??? по идеи вопросов должно быть 30(они на стадии разработки))))))
|
|
|
RE: jаvаsсriрt сводит с ума - 2011-02-04 15:22:42.816666
|
|
|
nekiii
Сообщений: 5
Оценки: 0
Присоединился: 2010-05-31 14:21:12.753333
|
я понял в чём ошибка)))) { text: "Что такое <b>класс</b> с точки зрения программирования?:", answers: ["некоторая сущность в виртуальном пространстве, обладающая определённым состоянием и поведением, имеет заданные значения свойств (атрибутов) и операций над ними (методов)", "это объект-образец, по образу и подобию которого создаются другие объекты.", "это тип, описывающий устройство объектов.",], correctAnswer: 2 // нумерация ответов с нуля! }, вот в последней запятой после которой ничего нетууууу))) пустое значение ))))))))) вот всё)))
|
|
|
|
|