自动填充表单中的字段

时间:2017-10-10 16:45:42

标签: javascript

我有一张包含30张照片的页面。单击照片时会打开一个表单。表单中的第一个字段是"照片名称"。

如何在第一个字段中自动填充该特定照片的名称?等等剩下的照片。

更新

照片的名称将是文件名。例如,对于" 28252896.png"它看起来像这样:

<div class="lbm-column width-33">
    <p>
        <img src="Images/Screenshots/Tennis/28252896.png" width="300" height="199" class="scalable" alt="">
    </p>
</div>

1 个答案:

答案 0 :(得分:1)

一种方法是为链接提供url参数。

例如:

<div class="lbm-column width-33">
  <p><a target="new" href="form2.html?name=10205157_m.png"><img src="Images/Screenshots/Golf/10205157_m.png" width="300" height="200" class="scalable" alt=""></a></p>
</div>

它与您的网页上的相同,只是在href结尾处有?name=10205157_m.png

目标网页上的表单可能看起来像这样:

<form class="" action="#" method="post">
  <label>Photo name <input id="photoName" type="text" name="..." value=""></label>
  ...
</form>

然后有一些JavaScript(来自this page的功能)

<script type="text/javascript">
var photoNameField = document.getElementById('photoName');
var photoName = GetURLParameter("name");
if (photoName){
  photoNameField.value = photoName;
}

function GetURLParameter(sParam)
{
  var sPageURL = window.location.search.substring(1);
  var sURLVariables = sPageURL.split('&');
  for (var i = 0; i < sURLVariables.length; i++)
  {
    var sParameterName = sURLVariables[i].split('=');
    if (sParameterName[0] == sParam){
      return sParameterName[1];
    }
  }
}
</script>

这会从网址获取name参数的值,并更改输入字段的值以匹配。