我正在开发一个页面,允许用户查看我们当前所有的位置并进行编辑。这些位置存储在我的表中tr的表单元素中,其id为location_table。这部分效果很好,表单可以正确提交和POST。但是,我创建了一个添加新行的函数addLocationRow(),它创建了一个空白表单,以允许用户创建一个新位置。调用createLocation函数时似乎工作正常。使用正确的表格单元格,图像等创建新行。您可以输入下一个文本并更改任何选项。但是当发送到createLocation时,表单不会返回任何内容(函数与用于测试目的的编辑位置相同,因为我知道它适用于正常创建的表单)
function addLocationRow() {
$('#location_table > tbody:first').append('<tr><form name="updateForm" action="" method="get"><td> </td><td><input type="text" name="location" value=""></td><td><select name="type"><option value="">None</option><option value="M">Kit</option><option value="B">Bulk</option><option value="MB">Kit/Bulk</option></select></td><td><input type="checkbox" name="mixed"></td><td><input type="checkbox" name="pickable"></td><td></td><td><button class="right" style="font-size:14px; border:none; background:none;" type="button" onClick="createLocation(this.form)"><img src="images/approved.gif"></button></td></form></tr>');
}
当我拉出源工具chrome时,我在createLocation()函数中停止了
function createLocation(form){
var formLocation = form.location.value;
alert(formLocation);
var formType = form.type.value;
var formMixed = form.mixed.checked;
formMixed = (formMixed == true) ? 1 : 0;
var formPickable = form.pickable.checked;
formPickable = (formPickable == true) ? 1 : 0;
if(confirm("Are you sure you want to create " + formLocation + "?")){
//check syntax / characters
$.post("createLocation.php", {location: formLocation, type: formType, mixed: formMixed, pickable: formPickable} ,function(data) {
message = data["message"];
alert(message);
},"json");
}
}
检查器打开(表单)它为空。由于某种原因,从不返回任何东西。此函数适用于未在addLocationRow函数中创建的表单。看到addLocationRow()的任何错误?
另外,我知道有很多方法可以做到这一点。我愚弄了以下但是无法弄清楚如何在tr中放置一个表单。
function addLocationRow() {
var table = document.getElementById("location_table");
var row = table.insertRow(1);
var cellDelete = row.insertCell(0);
var cellLocation = row.insertCell(1);
var cellType = row.insertCell(2);
var cellMixed = row.insertCell(3);
var cellPickable = row.insertCell(4);
var cellPrint = row.insertCell(5);
var cellAddUpdate = row.insertCell(6);
cellLocation.innerHTML = '<input type="text" name="location">';
cellType.innerHTML = '<select name="type"><option value="">None</option><option value="M">Kit</option><option value="B">Bulk</option><option value="MB">Kit/Bulk</option></select>';
cellMixed.innerHTML = '<input type="checkbox" name="mixed">';
cellPickable.innerHTML = '<input type="checkbox" name="pickable">';
cellAddUpdate.innerHTML = '<button class="right" style="font-size:14px; border:none; background:none;" type="button" onClick="createLocation(this.form)"><img src="images/approved.gif"></button>';
}
任何帮助表示赞赏。我的目标是能够将表单发送到createLocation函数,以便能够编辑/检查给定的信息等。