我正在设计Django网络应用,遇到Regex错误时遇到了一些麻烦。不能正常工作的部分基本上会在数据库中加载任何产品的详细信息,并将其显示在表格中。在详细信息旁边,我需要一个按钮,该按钮将允许用户更详细地查看产品。我还没有写那部分,但是现在当我单击按钮时,它返回一个Uncaught SyntaxError: Invalid regular expression: missing /
错误。这是这里的代码:
<!DOCTYPE html>
<html>
<body>
<div>
<h2 id="title">Create product</h2>
<input id="name">Name</input>
<br>
<input id="description">Description</input>
<br>
<input id="price">Price</input>
<br>
<button id="add-product">ADD PRODUCT</button>
</div>
<table id = "product-table">
<td>
<button id = "myButton"></button>
</td>
</table>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
getData();
});
document.getElementById('add-product').onclick = function(){
sendData();
getData();
}
function getData(){
$.ajax({
url: 'product/view',
dataType: 'json',
type: 'GET',
success: function(data){
$('#product-table').empty();
var dmJSON = "http://localhost:8000/product/view";
$.getJSON(dmJSON, function(data) {
$.each(data, function(i, f) {
url = "product/view/" + f.id ;
console.log(url);
var button = "<button onclick=location.href"+url+"> View product </button>" ;
var tblRow = "<tr>" + "<td> ID: " + f.id + "</td>" + "<td> Name: " + f.name + "</td>" + "<td> Description: " + f.description + "</td>" + "<td> Price " + f.price + "</td>" + "</tr>";
$(tblRow).appendTo("#product-table");
$(button).appendTo("#product-table");
});
})
}})
}
views.py文件-未完全写成
from django.shortcuts import render
from django.views.decorators.csrf import csrf_exempt
from products.models import Product
from django.http import HttpResponse, JsonResponse
def index(request):
return render(request, 'index.html')
def viewProduct(request, idNumber):
return HttpResponse('this is the {} user'.format(idNumber))
最后是urls文件:
从django.contrib导入从django.urls导入路径 产品导入视图中
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index),
path('product/create', views.createProduct),
path('product/view/<idNumber>/', views.viewProduct)
]
我计划要做的是将数据加载到表中以创建一个URL变量,该变量将保存产品/视图url,然后使用字符串串联将产品ID添加到其中。那一点工作正常。我的计划是urls.py将转到views文件,在该文件中我将实现功能以更详细地查看产品。即使现在,如果我转到product / view / 1 URL,它也会返回作为占位符的基本HttpResponse。但是,当单击按钮转到那里时,它没有这样做,并且在Chrome控制台中返回了上述错误。我不确定这意味着什么,因为我没有在这里使用正则表达式或正则表达式来做任何事情,所以不确定如何解决。
Uncaught SyntaxError: Invalid regular expression: missing /