使用jquery将外部页面加载到div中的问题

使用jquery将外部页面加载到div中的问题,jquery,search,post,html,Jquery,Search,Post,Html,我想创建搜索日志文件历史记录的搜索页面。由于显示区域的限制,我希望用户在显示搜索结果之前限制日志文件的日期范围 我已经创建了日期选择器“from”和“to”,这将为输入提供日期范围。该按钮将是提交此日期范围的按钮 <Form action="/" id="searchDate"> From: <input type="text" name="from" id="datepickerFrom"> To: <input type="text" name="to" id

我想创建搜索日志文件历史记录的搜索页面。由于显示区域的限制,我希望用户在显示搜索结果之前限制日志文件的日期范围

我已经创建了日期选择器“from”和“to”,这将为输入提供日期范围。该按钮将是提交此日期范围的按钮

<Form action="/" id="searchDate">
From: <input type="text" name="from" id="datepickerFrom"> 
To: <input type="text" name="to" id="datepickerTo">
<input type="submit" value="Submit"/>
</Form>

发件人:
致:
这里是脚本

<script>
// attach a submit handler to the form
$("#searchDate").submit(function(event) {
  // stop form from submitting normally
  event.preventDefault(); 
  var eID = $("#userID").val();
  // get some values from elements on the page:
  var $form = $( this ),
  termFrom = $form.find( 'input[name="from"]' ).val(),
  termTo = $form.find( 'input[name="to"]' ).val(),
  url = $form.attr( 'action' );
  // Send the data using post and put the results in a div
  $.post("/home/", function(data){
  $( "#result" ).load("/search/"); //.html(termFrom+" "+termTo);
  }

);
});
</script>

//将提交处理程序附加到表单
$(“#搜索日期”).submit(函数(事件){
//阻止表单正常提交
event.preventDefault();
var eID=$(“#userID”).val();
//从页面上的元素获取一些值:
var$form=$(此),
termFrom=$form.find('input[name=“from”]”)。val(),
termTo=$form.find('input[name=“to”]”)。val(),
url=$form.attr('action');
//使用post发送数据,并将结果放入div中
$.post(“/home/”,函数(数据){
$(“#结果”).load(“/search/”);//.html(termFrom+”+termTo);
}
);
});
如果我使用$(“#result”).html(termFrom+”+termTo),它就可以工作了;语句,但它是仅接受html字符串。我想将日期发布到外部页面以执行查询,并将该外部页面加载到搜索框页面的div中,因此我使用.load(“/home/search/”)。我只想在不传递post值的情况下测试加载外部页面,但它不起作用。为什么在这种情况下.load()不起作用


提前感谢…

如果我正确理解“外部”您会遇到跨域ajax策略问题-请在

上阅读更多关于它的信息如果我正确理解“外部”您会遇到跨域ajax策略问题-请在

上阅读更多关于它的信息如果您只想在不发送任何post数据的情况下测试它,请使用:

$.post("/home/search", function(data){

  $( "#result" ).html(data);

});
当您需要实际发送值时,您需要执行以下操作:

$.post("/home/search",{"termFrom": termFrom, "termTo": termTo}, function(data){
  $( "#result" ).html(data);
});

如果您不想在不发送任何post数据的情况下对其进行测试,则只需使用:

$.post("/home/search", function(data){

  $( "#result" ).html(data);

});
当您需要实际发送值时,您需要执行以下操作:

$.post("/home/search",{"termFrom": termFrom, "termTo": termTo}, function(data){
  $( "#result" ).html(data);
});

以下代码中是否缺少引号

 $.post("/home/, function(data){
  $( "#result" ).load("/home/search/"); //.html(termFrom+" "+termTo);
  }

这会导致问题吗?

以下代码中是否缺少引号

 $.post("/home/, function(data){
  $( "#result" ).load("/home/search/"); //.html(termFrom+" "+termTo);
  }


这会导致问题吗?

首先,它的
表单
不是表单。将表单更改为表单的结果仍然是一样的……如果您转到
/search
或使用
调用的任何url,会发生什么情况。在浏览器中加载
,它的
表单
不是表单。将表单更改为表单的结果仍然是一样的…如果您转到
/search
或使用
调用的任何url,会发生什么情况。在浏览器中加载
?根据“相同来源”的定义,在相同的协议和主机下是否考虑了“/home”和“/home/search”?实际上,我使用的是django。它运行相同的服务器、相同的主机和相同的端口。我将url更改为“/search/”结果仍然相同。。这个外部页面是指另一个使用相同设置的页面。从“相同来源”的定义来看,是在同一协议和主机下考虑的“/home”和“/home/search”?实际上,我使用的是django。它运行相同的服务器、相同的主机和相同的端口。我将url更改为“/search/”结果仍然相同。。这个外部页面意味着使用相同设置的另一个页面。这是我的错误。事实上,我已经修正了这一点,但结果还是一样。这是我的错误。事实上,我已经解决了这一点,但结果仍然是一样的。如果我使用“.html(str)”,它工作正常,但是如果我使用“.load(url)”,它不工作。为什么要尝试使用load?所有加载操作都是使用
.html()
将响应html放入目标。。。与使用post在成功回调中手动执行的操作相同。您在javascript控制台中看到任何错误吗?我正在使用django。我不能使用只返回html的.html()。我想让它调用我的控制器python npt html。我知道你在用Django,但是我不清楚为什么您试图在
$回调中同时使用
加载
。post
为什么不调用控制器的url,该控制器提供您想要在其中一个中呈现的html?您试图在
post
回调中使用什么
加载
?我一定是在你真正想做的事情中遗漏了什么,但我想不出来:-)我让我的同事看一下。她跟你说的一模一样。刷新一段时间,然后它就工作了。非常感谢…如果我使用“.html(str)”,它工作正常,但是如果我使用“.load(url)”,它不工作。为什么要使用load?所有加载操作都是使用
.html()
将响应html放入目标。。。与使用post在成功回调中手动执行的操作相同。您在javascript控制台中看到任何错误吗?我正在使用django。我不能使用只返回html的.html()。我想让它调用我的控制器python npt html。我知道你在用Django,但是我不清楚为什么您试图在
$回调中同时使用
加载
。post
为什么不调用控制器的url,该控制器提供您想要在其中一个中呈现的html?您试图在
post
回调中使用什么
加载
?我一定是在你真正想做的事情中遗漏了什么,但我想不出来:-)我让我的同事看一下。她跟你说的一模一样。刷新一段时间,然后它就工作了。非常感谢你。。。