如何使用JavaScript函数将URL返回到表单操作

3
我想使用JavaScript函数返回一个表单动作的URL。
我像这样调用该函数:
<form action="javascript:getUrl()">

我的功能是返回类似这样的URL字符串:
function getUrl(){
    if(condition)
        return "this string url";
    else
        return "this string url";
}

当我这样做时,结果页面只是在浏览器上以文本格式显示URL,而不是加载它们。
我对这些脚本和网页设计的东西还很陌生。

可能是如何通过JavaScript设置表单操作?的重复问题。 - gus27
2个回答

0

javascript:getUrl() 不会被解释为JS代码,它只是一个字面上的字符串。

相反,选择表单元素并设置其动作属性:

function getUrl() {
  // ...
}

document.querySelector('form').action = getUrl()

自然地,使用更具体的选择器来选取你的表单,如id或class。


0

您可以使用表单的ID来确定操作URL。

Javascript:

<script type="text/javascript">
function form_action() { 
  if (document.getElementById("myFormId").action == "url1.html"){
     // do something
  }
  if (document.getElementById("myFormId").action == "url1.html"){
     // do something else 
  }

  // ...
}
</script>

HTML表单:

<form action="yourUrl" onsubmit="this.action=form_action();" id="myFormId">
...
</form>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接