0

我一直在玩小书签,并制作了一个将页面包装在iframe然后放置表单的小书签,这样我就可以将数据提交到我的服务器,但我无法从页面中获取 PHP 变量。

示例代码(已编译为书签: http: //moxleystratton.com/javascript/bookmarklet-compiler):

javascript:void((function(){
var a=document;
a.write(
      '<!DOCTYPE html>
      <html>
          <head>
          <meta charset="UTF-8">
          <title>'+a.title+' - Edit Mode </title>
      </head>
      <body>
      <section>
      <div id="wrapper">
      <iframe src="'+a.URL+'" >
      </iframe>
      </div>
      </section>
      <footer>
            <form action="/sys/manage/seo.php" method="post">
    <input type="hidden" value=rawData >
    <label for="title">Title</label>
    <input type="text" name="title" value="<?= $title;?>">
    <label for="title">Meta-Description</label>     
    <input type="text" name="meta-desc" value="<?= $data->meta-desc;?>">
    <label for="title">Meta-Keywords</label>        
    <input type="text" name="meta-key" value="<?= $data->meta-key;?>">
</form>
      </footer>
      </body>
      </html>')})());
4

1 回答 1

2

首先像这样修复你的JS:

void((function(){
var a=document;
a.write(
      '<!DOCTYPE html>\
      <html>\
    <head>\
          <meta charset="UTF-8\
          <title>'+a.title+' - Edit Mode </title>\
      </head>\
      <body>\
      <section>\
      <div id="wrapper">\
      <iframe src="'+a.URL+'" >\
      </iframe>\
      </div>\
      </section>\
      <footer>\
            <form action="/sys/manage/seo.php" method="post">\
    <input type="hidden" value=rawData >\
    <label for="title">Title</label>\
    <input type="text" name="title" value="<?= $title;?>">\
    <label for="title">Meta-Description</label>     \
    <input type="text" name="meta-desc" value="<?= $data->meta-desc;?>">\
    <label for="title">Meta-Keywords</label>        \
    <input type="text" name="meta-key" value="<?= $data->meta-key;?>">\
</form>\
      </footer>\
      </body>\
      </html>')})());

在这里演示:http: //jsfiddle.net/shahverdy/Z5EBk/

于 2013-03-17T10:36:41.663 回答