#javascript-events #javascript
#javascript-события #javascript
Вопрос:
Источник страницы:
<html>
<head>
<title>Admin Search Results</title>
<script type="text/javascript">
function delete()
{
alert("abc");
}
</script>
</head>
<body>
<h1>Admin Search Results</h1>
<form id="modDel" action="modDel.pl" method="post" onsubmit="return delete()">
<table border="1">
<tr>
<th>User Name</th>
<th>Email</th>
<th>First Name</th>
<th>Last Name</th>
<th>Password</th>
<th>Blocked</th>
<th>Modify</th>
<th>Delete</th>
</tr>
<tr>
<input type="hidden" id="un_0" name="un_0" value="aa">
<td>aa</td>
<td>aa</td>
<td>aa</td>
<td>aa</td>
<td>aa</td>
<td>0</td>
<td><input type="submit" name="modify_0" value="Modify"></td>
<td><input type="checkbox" id="delete_0" name="delete_0" value="Yes"></td>
</tr>
<tr>
<input type="hidden" id="un_1" name="un_1" value="a">
<td>a</td>
<td>a</td>
<td>a</td>
<td>a</td>
<td>a</td>
<td>0</td>
<td><input type="submit" name="modify_1" value="Modify"></td>
<td><input type="checkbox" id="delete_1" name="delete_1" value="Yes"></td>
</tr>
</table>
<input type="hidden" id="count" name="count" value="1">
<input type="submit" id="delete" name="delete" value="Delete Selected Accounts" onclick="delete()">
<button type="button" onclick="delete()">Display Date</button>
</form>
</body>
</html>
Он генерируется скриптом perl на основе двух шаблонов (один для таблицы).
Все, чего я хочу, — это чтобы что-то произошло на каком-нибудь мероприятии. Я добавил onsubmit и onclick, но ни то, ни другое не работает.
Я уверен, что просто упускаю что-то маленькое, но я этого не вижу. кстати, я использую chrome.
Редактировать: я могу заставить его работать, добавив код js непосредственно в кавычки onclick / onsubmit.
Ответ №1:
Проблема здесь в том, что это delete
зарезервированное слово в JavaScript. Попробуйте другое имя функции. Также нет необходимости return
в onsubmit
функции in, просто вызывайте функцию напрямую.
<script type="text/javascript">
function deleteFunc()
{
alert("abc");
}
</script>
</head>
<body>
<h1>Admin Search Results</h1>
<form id="modDel" action="modDel.pl" method="post" onsubmit="deleteFunc()">
Комментарии:
1. Вау. Я думал, что это будет что-то простое. Большое спасибо.
2. Также исправьте его встроенные обработчики событий o/
3. я вставил дополнительные возвраты, потому что я видел их где-то в примере, пытаясь устранить мою проблему. Но сейчас я их уберу.
4. хорошо, nvm. мне действительно нужны были дополнительные возвраты. Они останавливают отправку моей формы, если я возвращаю false . Я полагаю, что есть лучший способ для этого.