我有一个mvc应用程序,在其中我尝试通过用Javascript创建的表单调用控制器。
但是,当我单击“提交”按钮时,没有任何反应。当我用html编码表单时,即使将其中一个参数通过表单中的输入发布到控制器中也能正常工作。
我检查了检查器,似乎所有元素都已正确创建,具有适当的属性和所有内容。
<script>
var divlocation;
var adressdiv;
var adressform;
var adressnameinput;
var adressstreetinput;
var adressnmbrinput;
var adresszipinput;
function AddAdress()
{
var noadressdiv = document.getElementById("noadress");
divlocation = noadressdiv.getBoundingClientRect();
noadressdiv.remove();
CreateElements();
var parentdiv = document.getElementById("parent");
parentdiv.appendChild(adressdiv);
}
function CreateElements()
{
adressdiv = document.createElement("div");
adressdiv.style.position = divlocation;
adressdiv.setAttribute("justify-content", "flex");
adressform = document.createElement("form");
adressform.setAttribute("asp-controller", "User");
adressform.setAttribute("asp-action", "AddAdress");
adressnameinput = document.createElement("input");
adressnameinput.setAttribute("type", "text");
adressnameinput.setAttribute("name", "adressname");
adressnameinput.setAttribute("class", "search-input");
adressnameinput.setAttribute("value", "enter adress name here");
adressnameinput.setAttribute("onfocus", "this.value=''");
//all other input element creation removed for sake of brevity//
btnsubmit = document.createElement("button");
btnsubmit.setAttribute("type", "submit");
btnsubmit.setAttribute("id", "submit");
btnsubmit.setAttribute("class", "btn-submit");
btnsubmit.style.width = "70%";
btnsubmit.innerHTML = "submit adress!";
adressdiv.appendChild(adressform);
adressform.appendChild(adressnameinput);
adressform.appendChild(adressstreetinput);
adressform.appendChild(adressnmbrinput);
adressform.appendChild(adresszipinput);
adressform.appendChild(adresscountryinput);
adressform.appendChild(btnsubmit);
}
</script>
//My controller code://
public void AddAdress(string adressname, string streetname, string streetnmbr, string zipcode, string country)
{
string check = adressname;
}
如果有人知道我错过了什么,甚至可以参考一些文档,我将非常高兴:)