JavaScript с PHP - PullRequest
       7

JavaScript с PHP

1 голос
/ 31 августа 2009

Я хочу изменить текст метки после события.

т.д .: <td><label id="labelId" for="error"></label></td>

if(isset($_POST['submit'])) {
    //  here i wanna to make label text = "something"; 
}

Как я могу это сделать?

Заранее спасибо

Ответы [ 5 ]

4 голосов
/ 31 августа 2009

Следующее должно быть решением:

<?php
$label = '';

if(isset($_POST['submit']))
{
    $label = 'Posted';
}

echo '<form method="post" action="'. $_SERVER['PHP_SELF'] .'">';
echo '<input id="textfield" type="text" value="" /><label for="textfield">'. $label .'</label>';
echo '</form>';

?>

Точное решение всегда зависит от вашей текущей среды.

3 голосов
/ 31 августа 2009
<?php
//a ternary operator - shortcut for if/else
$btnText = isset($_POST['submit']) ? "New Text" : "Original Text";
?>

<button><?=$btnText?></button>
2 голосов
/ 31 августа 2009

Сохранить в переменной:

$buttonText = 'original text';
if(isset($_POST['submit'])) {
    $buttonText = "new text";
}
echo '<input type="submit" value="' . $buttonText . '"/>';
0 голосов
/ 06 декабря 2014

если я не ошибаюсь, у вас есть форма, при которой нажатие на кнопку отправки не должно отправлять информацию о форме на сервер, вместо этого вы хотите обновить текст на html-странице. сначала вам нужно отключить поведение элемента по умолчанию, как показано ниже:

Метод event.preventDefault () останавливает действие элемента по умолчанию. (Способ jquery) и после этого вы можете прослушать нажатие кнопки и в функции прослушивателя сделать ajax-вызов на сервер, получить желаемое значение и обновить нужную часть html.

0 голосов
/ 01 сентября 2009
    <html>
<head>
<script src="js/jquery.js" type="text/javascript"></script> 
<script type="text/javascript">
function updateLabelValue() {
$("#labelId").text($("#labelVal").val());
}
</script>
</head>
<body>
<br/>
Label:<label id="labelId" for="error"></label><br/>
<input type="text" id="labelVal" name="labelVal"><input type="submit" onclick="updateLabelValue();" value="Change Label">
</body>
</html>

Здесь вступают в игру jQuery + AJAX. Поскольку PHP является языком сценариев на стороне сервера, весь PHP компилируется на сервер и отправляется клиенту. После получения контента клиентом в веб-браузере компилируется JavaScript, HTML, CSS и другой код на стороне клиента.

Чтобы изменить представление на стороне клиента с использованием сценариев на стороне сервера, потребуется либо обновление страницы, либо вызов ajax (для обновления значения метки без необходимости перезагрузки страницы).

Решение Мариена - не-ajax-версия, которая потребует перезагрузки страницы.

На самом деле вам даже не нужен PHP. JQuery сделает всю работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...