03f3c7764cfff10f076ce2356cfb7911858fd8f6
kent
  Fri Nov 30 11:41:27 2012 -0800
Making htmlCheck not warn about missing NAME tags for INPUT tags if they have an ONCHANGE.
diff --git src/lib/htmlPage.c src/lib/htmlPage.c
index cb8b01b..9bcafe1 100644
--- src/lib/htmlPage.c
+++ src/lib/htmlPage.c
@@ -684,31 +684,32 @@
 struct htmlTag *tag;
 struct htmlFormVar *varList = NULL, *var;
 struct hash *hash = newHash(0);
 for (tag = form->startTag->next; tag != form->endTag; tag = tag->next)
     {
     if (sameWord(tag->name, "INPUT"))
         {
 	char *type = htmlTagAttributeVal(page, tag, "TYPE", NULL);
 	char *varName = htmlTagAttributeVal(page, tag, "NAME", NULL);
 	char *value = htmlTagAttributeVal(page, tag, "VALUE", NULL);
 
 	if (type == NULL)
 	    type = "TEXT";
 	if (varName == NULL)
 	    {
-	    if (!sameWord(type, "SUBMIT") && !sameWord(type, "CLEAR")
+	    if (!htmlTagAttributeVal(page, tag, "ONCHANGE", NULL)
+	        && !sameWord(type, "SUBMIT") && !sameWord(type, "CLEAR")
 	    	&& !sameWord(type, "BUTTON") && !sameWord(type, "RESET")
 		&& !sameWord(type, "IMAGE"))
 		tagWarn(page, tag, "Missing NAME attribute");
 	    varName = "n/a";
 	    }
 	var = findOrMakeVar(page, varName, hash, tag, &varList); 
 	if (var->type != NULL && !sameWord(var->type, type))
 	    {
 	    if (!isMixableInputType(var->type) || !isMixableInputType(type))
 		tagWarn(page, tag, "Mixing input types %s and %s", var->type, type);
 	    }
 	var->type = type;
 	if (sameWord(type, "TEXT") || sameWord(type, "PASSWORD") 
 		|| sameWord(type, "FILE") || sameWord(type, "HIDDEN")
 		|| sameWord(type, "IMAGE"))