У меня тут какая-то ситуация: у меня есть следующая форма:
<form action="sample.php" id="searchform" method="post">
<input type="text" id="key_words" name="key_words" value="<?php echo isset($_POST['key_words']) ? $_POST['key_words'] : '' ?>"style="width:377px;">
<input type="text" name="minimum_price" value="<?php echo isset($_POST['minimum_price']) ? $_POST['minimum_price'] : '' ?>">
<input type="text" name="maximum_price" value="<?php echo isset($_POST['maximum_price']) ? $_POST['maximum_price'] : '' ?>">
Я использую скрипт php в значении, потому что мне нужно сохранить значение в текстовом поле постоянным. Итак, теперь мне нужно очистить значения в текстовом поле, когда я нажимаю кнопку:
<button type="reset" value="clear" onclick="clearform()">Clear</button>
Я попробовал несколько вещей и потерпел неудачу. Помогите, пожалуйста? JavaScript также можно использовать для метода clearform ().
Вам просто нужно получить элементы по идентификатору и установить атрибут value в пустую строку:
function clearform()
{
document.getElementById('key_words').value = '';
//same thing for other ids
}
Для тебя minimum_price
а также maximum_price
вам нужно добавить id
так как у вас есть только name
прямо сейчас.
Также в этом случае, поскольку вы не хотите использовать стандартную функцию сброса HTML, не делайте тип кнопки reset
,
Это будет работать для вас:
<form action="sample.php" id="searchform" method="post">
<input type="text" id="key_words" name="key_words" value="test1"style="width:377px;">
<input type="text" name="minimum_price" value="test2">
<input type="text" name="maximum_price" value="test3">
<button type="reset" value="clear" onclick="clearform()">Clear</button>
</form>
<script>
function clearform() {
var form = document.getElementById("searchform");
var textFields = form.getElementsByTagName('input');
for(var i = 0; i < textFields.length; i++) {
textFields[i].setAttribute('value', '');
}
}
</script>