2013-05-30 3 views
1

Я взял семестр класса JavaScript перед последним, передал его, а теперь Я нахожусь на летнем перерыве. Книга, которую мы использовали, - это JavaScript 8-е издание, Том Негрино, Дори Смит. Существует код для генератора имен. Все, что нужно, находится в книге (стр. 301). Он вызывает имя и фамилию, но я хотел добавить среднее имя для вывода другого глупого имени. Это не домашнее задание, просто что-то Я хотел попробовать. Если вы оставите первое или фамильное имя пустым, вы получите сообщение «Это недействительное имя». Поэтому я закодировал среднее имя, введя 26 слов для среднего имени, но код не распознает ничего, кроме первого и фамилию. Мне кажется, что это должно сработать, но все же только сначала и фамилия. Может быть, еще одна пара глаз может помочь мне увидеть, что Я пропустил или не включил.Javascript «Silly Name Generator»

Спасибо за любые предложения, CK

The HTML 
<!DOCTYPE html> 
<html> 
<head> 
<title>Silly Name Generator</title> 
<script src="script05.js"></script> 
</head> 
<body> 
<h1>What's your silly name?</h1> 
<table> 
<tr> 
    <td class="rtAlign">First Name:</td> 
    <td><input type="text" id="fName" size="30"></td> 
</tr> 
<tr> 
    <td class="rtAlign">Middle Name:</td> 
    <td><input type="text" id="mName" size="30"></td> 
</tr> 
<tr> 
    <td class="rtAlign">Last Name:</td> 
    <td><input type="text" id="lName" size="30"></td> 
</tr> 
<tr> 
    <td>&nbsp;</td> 
    <td><input type="submit" value="Submit" id="sillySubmit"> 
</tr> 
</table> 
<p id="msgField">&nbsp;</p> 
</body> 
</html> 

JavaScript

window.onload = initAll; 

function initAll() { 
document.getElementById("sillySubmit").onclick = function() { 
    document.getElementById("msgField").innerHTML = getSillyName(); 
    return false; 
} 
} 

function getSillyName() { 
var firstName = ["Runny", "Buttercup", "Dinky", "Stinky", "Crusty", 
"Greasy","Gidget", "Cheesypoof", "Lumpy", "Wacky", "Tiny", "Flunky", 
"Fluffy", "Zippy", "Doofus", "Gobsmacked", "Slimy", "Grimy", "Salamander", 
"Oily", "Burrito", "Bumpy", "Loopy", "Snotty", "Irving", "Egbert"]; 

var middleName =["Waffer", "Lilly","Rugrat","Sand", "Fuzzy","Kitty", 
"Puppy", "Snuggles","Rubber", "Stinky", "Lulu", "Lala", "Sparkle", "Glitter", 
"Silver", "Golden", "Rainbow", "Cloud", "Rain", "Stormy", "Wink", "Sugar", 
"Twinkle", "Star", "Halo", "Angel"]; 

var lastName1 = ["Snicker", "Buffalo", "Gross", "Bubble", "Sheep", 
"Corset", "Toilet", "Lizard", "Waffle", "Kumquat", "Burger", "Chimp", "Liver", 
"Gorilla", "Rhino", "Emu", "Pizza", "Toad", "Gerbil", "Pickle", "Tofu", 
"Chicken", "Potato", "Hamster", "Lemur", "Vermin"]; 
var lastName2 = ["face", "dip", "nose", "brain", "head", "breath", 
"pants", "shorts", "lips", "mouth", "muffin", "butt", "bottom", "elbow", 
"honker", "toes", "buns", "spew", "kisser", "fanny", "squirt", "chunks", 
"brains", "wit", "juice", "shower"]; 

var firstNm = document.getElementById("fName").value.toUpperCase(); 
var middleNm = document.getElementById("mName").value.toUpperCase(); 
var lastNm = document.getElementById("lName").value.toUpperCase(); 
var validName = true; 

if (firstNm == "") { 
    validName = false; 
} 
else { 
    var firstNum = firstNm.charCodeAt(0) - 65; 

    if (firstNum < 0 || firstNum > 25) { 
     validName = false; 
    } 
} 

if (!validName) { 
    document.getElementById("fName").focus(); 
    document.getElementById("fName").select(); 
    return "That's not a valid first name"; 
} 
if (middleNm == "") { 
    validName = false; 
} 
else { 
    var middleNum = middleNm.charCodeAt(0) - 65; 

    if (middleNum < 0 || middleNum > 25) { 
     validName = false; 
    } 
} 
if (!validName) { 
    document.getElementById("mName").focus(); 
    document.getElementById("mName").select(); 
    return "That's not a valid middle name"; 
} 

if (lastNm == "") { 
    validName = false; 
} 
else { 
    var lastNum1 = lastNm.charCodeAt(0) - 65; 
    var lastNum2 = lastNm.charCodeAt((lastNm.length-1)) - 65; 

    if (lastNum1 < 0 || lastNum1 > 25 || lastNum2 < 0 || lastNum2 > 25) { 
     validName = false; 
    } 
} 

if (!validName) { 
    document.getElementById("lName").focus(); 
    document.getElementById("lName").select(); 
    return "That's not a valid last name"; 
} 

return "Your silly name is " + firstName[firstNum] 
+ " " + middleName[middleNum] + " " + lastName1[lastNum1] 
+ lastName2[lastNum2]; 
} 
+1

Почему в мире весь этот код вместо 3 простых случайных звонков ... – Blindy

+0

это выглядит хорошо для меня http://jsfiddle.net/arunpjohny/yfATj/2/ –

+0

@Blindy Я полагаю, ради изучения * оставил упражнение для чтения читателя * – Jasen

ответ

1

Ваш HTML и JavaScript работает для меня. Я предполагаю, что ваш браузер кэширует ваш старый файл JavaScript. Попробуйте очистить кеш браузера или обновить его без кеша (обычно ctrl-f5 или shift-f5).