Use the <button> element and add name and value attributes.
See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button
A button can contain other HTML elements like images.
Am 28.08.2013 22:47, schrieb Steven Brown:
> This is not working for me. What am I doing wrong? I'm ok with using an
> actual
> button of type submit, if that's the problem, but I need a way to have the
> button show one thing, like an image or text, but the value be something
> different, so I can have a bunch of buttons that just say "delete," or have an
> image, but have the nitty-gritty be hidden from the user.
>
> My relevant code:
> Template snippet:
> <form name="modifyPrestigeEntry" method="post">
> <td><input type="image" name="submitButton"
> value="delete_$entry.entry_id" src="static/trash_can.jpg" height="25"
> title="Delete Prestige" alt="Delete Prestige"/>
> (Many copies of this button, all with different entry_ids. That part comes
> out
> right.)
> </form>
>
> python code:
> vars = web.input()
> buttonID = vars.submitButton
> print buttonID
> .
> .
> .
> elif buttonID.split('_')[0] == 'delete':
> db.delete('entries', where="member_id = " + memberID + " AND
> entry_id = " + str(scrub("int", buttonID.split('_')[1])))
>
> Clicking one of the buttons gives the error:
>
>
> <type 'exceptions.AttributeError'> at /prestigeEntryForm
>
>
> 'submitButton'
>
> Python /usr/lib/pymodules/python2.7/web/utils.py in __getattr__, line
> 70
> Web POST http://SERVER IP:1234/prestigeEntryForm
>
>
> Traceback (innermost first)
>
> * |/usr/lib/pymodules/python2.7/web/utils.py| in |__getattr__|
> 70. raise AttributeError, k ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
> * |/home/steven/Dropbox/Projects/PrestigeLogger/prestigeEntryForm.py| in
> |POST|
> 70. buttonID = vars.submitButton ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
> * |/usr/lib/pymodules/python2.7/web/application.py| in |handle_class|
> 389. return tocall(*args) ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
> * |/usr/lib/pymodules/python2.7/web/application.py| in |_delegate|
> 414. return handle_class(cls) ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
> * |/usr/lib/pymodules/python2.7/web/application.py| in |handle|
> 232. return self._delegate(fn, self.fvars, args) ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
> * |/usr/lib/pymodules/python2.7/web/application.py| in |process|
> 241. return self.handle() ...
> ▶ Local vars <http://68.200.151.128:1234/prestigeEntryForm#>
>
>
> Request information
>
>
> INPUT
>
> Variable Value
> submitButton.x
> '9'
> submitButton.y
> '10'
>
>
> COOKIES
>
> No data.
>
>
> META
>
> Variable Value
> app_stack
> [<web.application.application instance at 0x8c9b52c>]
> data
> 'submitButton.x=9&submitButton.y=10'
> fullpath
> u'/prestigeEntryForm'
> headers
> []
> home
> u'http://SERVER IP:1234'
> homedomain
> u'http://SERVER IP:1234'
> homepath
> u''
> host
> u'SERVER IP:1234'
> ip
> u'SERVER IP'
> method
> u'POST'
> output
> u''
> path
> u'/prestigeEntryForm'
> protocol
> u'http'
> query
> u''
> realhome
> u'http://SERVER IP:1234'
> status
> '200 OK'
>
>
> ENVIRONMENT
>
> Variable Value
> ACTUAL_SERVER_PROTOCOL
> 'HTTP/1.1'
> CONTENT_LENGTH
> '34'
> CONTENT_TYPE
> 'application/x-www-form-urlencoded'
> HTTP_ACCEPT
> 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
> HTTP_ACCEPT_ENCODING
> 'gzip, deflate'
> HTTP_ACCEPT_LANGUAGE
> 'en-US,en;q=0.5'
> HTTP_CONNECTION
> 'keep-alive'
> HTTP_DNT
> '1'
> HTTP_HOST
> 'SERVER IP:1234'
> HTTP_USER_AGENT
> 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:23.0) Gecko/20100101 Firefox/23.0'
> PATH_INFO
> '/prestigeEntryForm'
> QUERY_STRING
> ''
> REMOTE_ADDR
> 'SERVER IP'
> REMOTE_PORT
> '41306'
> REQUEST_METHOD
> 'POST'
> SCRIPT_NAME
> ''
> SERVER_NAME
> 'localhost'
> SERVER_PORT
> '1234'
> SERVER_PROTOCOL
> 'HTTP/1.1'
> SERVER_SOFTWARE
> 'CherryPy/3.1.2 WSGI Server'
> wsgi.errors
> <open file '<stderr>', mode 'w' at 0xb76ee0d0>
> wsgi.input
> <web.wsgiserver.SizeCheckWrapper object at 0x8cc7a8c>
> wsgi.multiprocess
> False
> wsgi.multithread
> True
> wsgi.run_once
> False
> wsgi.url_scheme
> 'http'
> wsgi.version
> (1, 0)
>
>
> On 06/02/2013 07:42 AM, Dragan Espenschied wrote:
>> This is your HTML:
>>
>> <form action="submit" method="POST">
>> <input type="submit" name="do" value="delete">
>> <input type="submit" name="do" value="copy">
>> </form>
>>
>> In your script you'll check the value of the "do" variable:
>>
>> class submit:
>> def POST(self):
>> vars = web.input()
>> if vars.do == "copy":
>> do_that()
>>
>> Am 01.06.2013 20:27, schrieb Klerik:
>>> hi guys, is some simply example with multiple send buttons?
>>> I still dont understeand how can I do it.
>>>
>>> Thanks
>>> --
>>> Klerik
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "web.py" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an
>>> email
>>> to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at http://groups.google.com/group/webpy?hl=en.
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "web.py" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email
> to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/webpy.
> For more options, visit https://groups.google.com/groups/opt_out.
--
http://1x-upon.com/~despens/ >NEW!<
http://noobz.cc/
http://contemporary-home-computing.org/1tb/
--
You received this message because you are subscribed to the Google Groups
"web.py" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/webpy.
For more options, visit https://groups.google.com/groups/opt_out.