2015-08-03 2 views
3

Я работаю через Learn Python The Hard Way, и сейчас я работаю над упражнением 51. В нем ученику предлагается добавить файл templates/index.html ссылка назад, чтобы мы могли заполнить форму и увидеть результаты. Мой код выглядит следующим образом:ссылка вернуться к форме, которую мы посетили до

/bin 
    app.py 
/static 
/templates 
    hello_form.html 
    index.html 
/tests 

app.py записывается следующим образом:

import web 

urls = (
    '/hello', 'Index' 
    ) 

app = web.application(urls, globals()) 

render = web.template.render('templates/', base="layout") 

class Index(object): 
    def GET(self): 
     return render.hello_form() 

    def POST(self): 
     form = web.input(name="Nobody", greet="Hello") 
     greeting = "%s, %s" % (form.greet, form.name) 
     return render.index(greeting = greeting) 

if __name__ == "__main__": 
    app.run() 

index.html записывается следующим образом:

$def with (greeting) 

$if greeting: 
    I just wanted to say <em style="color: green; font-size: 2em;">$greeting</em> 
$else: 
    <em>Hello</em>, world! 

hello_form.html записывается следующим образом:

<h1>Fill out this form</h1> 

<form action="/hello" method="POST"> 
    A Greeting: <input type="text" name="greet"> 
    <br/> 
    Your Name: <input type="text" name="name"> 
    <br/> 
    <input type="submit"> 
</form> 

Этот ссылка назад есть кнопка на форме, не так ли? Как добавить обработчик для этой кнопки?

Заранее за вашу помощь.

ответ

0

Я добавил эти несколько строк в index.html, и это сработало.

<form> 
     <input type="button" value="Back" onclick="history.back()"> 
     </input>  
    </form> 

Для получения дополнительной информации посетите https://www.computerhope.com/issues/ch000317.htm

Надеется, что это помогает.

1

Это можно сделать только с базовым html. Что-то вроде следующего:

<form method="get" action="/page2"> 
    <button type="submit">Continue</button> 
</form> 

Должно делать это.

+0

вы можете не понимать, нужно, когда я нажимаю кнопку в index.html, а затем возвращаюсь к первой форме, и эта форма имеет текст, который я набрал ранее. И непонятно, как отправить или сохранить предыдущий ввод –

0
<form action="/hello" method="GET"> 
<input type="submit"> 
</form> 

поместить этот код внутри <body> </body>

+1

Возможно, вам необходимо уточнить свой ответ. Например, исходный вопрос не показывает теги тела hello_form, и поэтому он не может смущать OP – PyNEwbie

1

Введите это до последнего тела тега:

<a href = "http://localhost:8080/hello">Link to Hello</a> 

Таким образом, это будет просто вернуть вас на страницу формы.

Смежные вопросы