Javascript Ajax-鼠标悬停时向控制器发送请求,并将结果呈现到div中
我正在用mvc做一个项目,我试着在mouseover上使用Ajax函数来获取 我数据库中的信息 我添加了一个控制器动作和一个视图来渲染结果 但什么都不管用 我尝试了很多事情,但我不明白问题出在哪里,因为什么都没有发生 这是我第一次使用ajax函数,所以我是个新手 希望大家能帮我一把 这是我的密码: Ajax:Javascript Ajax-鼠标悬停时向控制器发送请求,并将结果呈现到div中,javascript,asp.net,ajax,asp.net-mvc,Javascript,Asp.net,Ajax,Asp.net Mvc,我正在用mvc做一个项目,我试着在mouseover上使用Ajax函数来获取 我数据库中的信息 我添加了一个控制器动作和一个视图来渲染结果 但什么都不管用 我尝试了很多事情,但我不明白问题出在哪里,因为什么都没有发生 这是我第一次使用ajax函数,所以我是个新手 希望大家能帮我一把 这是我的密码: Ajax: $("#mybutton").mouseover(function () { $.ajax({ url: "@Url.Action(“MyActi
$("#mybutton").mouseover(function () {
$.ajax({
url: "@Url.Action(“MyAction”,”MyController”)",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
<form action="@Url.Action("MyPostAction", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
[ChildActionOnly]
public ActionResult PartialViewExample(FormCollection formcollection)
{
var id_option = formcollection["Id_Hidden"];
SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
StringBuilder sb = new StringBuilder();
cn.Open();
sb.AppendLine("Select Id From Table1 ");
sb.AppendLine("WHERE Id='" + id_option + "'");
SqlDataReader sqlDataReader = new SqlCommand(sb.ToString(), cn).ExecuteReader();
while (sqlDataReader.Read())
{
if (!sqlDataReader.IsDBNull(1))
{
object value = sqlDataReader[1];
infolist(new Table1()
{
Name = value.ToString(),
});
}
}
cn.Close();
cn.Dispose();
sqlDataReader.Dispose();
ViewBag.Options = infolist
return View("HintExampleView_Layout");
}
<div id="InformationBox">
@foreach (var p in ViewBag.Options)
{
@p.Step2Name
@p.IconHover
}
</div>
<form action="@Url.Action("PartialViewExample", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
<div id="InformationBox"> </div>
return PartialView("HintExampleView_Layout");
$(document).ready(function {
$("#mybutton").mouseover(function () {
alert("Mouseover Test"); /* <- Remove me if working */
$.ajax({
url: "@Url.Action("MyAction","MyController")",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
});
HintExampleView\u布局(渲染结果但显示在主视图中):
$("#mybutton").mouseover(function () {
$.ajax({
url: "@Url.Action(“MyAction”,”MyController”)",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
<form action="@Url.Action("MyPostAction", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
[ChildActionOnly]
public ActionResult PartialViewExample(FormCollection formcollection)
{
var id_option = formcollection["Id_Hidden"];
SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
StringBuilder sb = new StringBuilder();
cn.Open();
sb.AppendLine("Select Id From Table1 ");
sb.AppendLine("WHERE Id='" + id_option + "'");
SqlDataReader sqlDataReader = new SqlCommand(sb.ToString(), cn).ExecuteReader();
while (sqlDataReader.Read())
{
if (!sqlDataReader.IsDBNull(1))
{
object value = sqlDataReader[1];
infolist(new Table1()
{
Name = value.ToString(),
});
}
}
cn.Close();
cn.Dispose();
sqlDataReader.Dispose();
ViewBag.Options = infolist
return View("HintExampleView_Layout");
}
<div id="InformationBox">
@foreach (var p in ViewBag.Options)
{
@p.Step2Name
@p.IconHover
}
</div>
<form action="@Url.Action("PartialViewExample", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
<div id="InformationBox"> </div>
return PartialView("HintExampleView_Layout");
$(document).ready(function {
$("#mybutton").mouseover(function () {
alert("Mouseover Test"); /* <- Remove me if working */
$.ajax({
url: "@Url.Action("MyAction","MyController")",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
});
@foreach(ViewBag.Options中的var p)
{
@p、 步骤2名称
@p、 伊肯霍夫
}
哼哼你的URL不好(如果你不在cshtml文件中),你在客户端别忘了:
$("#mybutton").mouseover(function () {
$.ajax({
**url: "@Url.Action(“MyAction”,”MyController”)",**
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
$(“#我的按钮”).mouseover(函数(){
$.ajax({
**url:@url.Action(“MyAction”、“MyController”),**
成功:功能(结果){
$(“#信息框”).html(结果);/*MainView:
$("#mybutton").mouseover(function () {
$.ajax({
url: "@Url.Action(“MyAction”,”MyController”)",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
<form action="@Url.Action("MyPostAction", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
[ChildActionOnly]
public ActionResult PartialViewExample(FormCollection formcollection)
{
var id_option = formcollection["Id_Hidden"];
SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
StringBuilder sb = new StringBuilder();
cn.Open();
sb.AppendLine("Select Id From Table1 ");
sb.AppendLine("WHERE Id='" + id_option + "'");
SqlDataReader sqlDataReader = new SqlCommand(sb.ToString(), cn).ExecuteReader();
while (sqlDataReader.Read())
{
if (!sqlDataReader.IsDBNull(1))
{
object value = sqlDataReader[1];
infolist(new Table1()
{
Name = value.ToString(),
});
}
}
cn.Close();
cn.Dispose();
sqlDataReader.Dispose();
ViewBag.Options = infolist
return View("HintExampleView_Layout");
}
<div id="InformationBox">
@foreach (var p in ViewBag.Options)
{
@p.Step2Name
@p.IconHover
}
</div>
<form action="@Url.Action("PartialViewExample", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
<div id="InformationBox"> </div>
return PartialView("HintExampleView_Layout");
$(document).ready(function {
$("#mybutton").mouseover(function () {
alert("Mouseover Test"); /* <- Remove me if working */
$.ajax({
url: "@Url.Action("MyAction","MyController")",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
});
Ajax:
$("#mybutton").mouseover(function () {
$.ajax({
url: "@Url.Action(“MyAction”,”MyController”)",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
<form action="@Url.Action("MyPostAction", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
[ChildActionOnly]
public ActionResult PartialViewExample(FormCollection formcollection)
{
var id_option = formcollection["Id_Hidden"];
SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
StringBuilder sb = new StringBuilder();
cn.Open();
sb.AppendLine("Select Id From Table1 ");
sb.AppendLine("WHERE Id='" + id_option + "'");
SqlDataReader sqlDataReader = new SqlCommand(sb.ToString(), cn).ExecuteReader();
while (sqlDataReader.Read())
{
if (!sqlDataReader.IsDBNull(1))
{
object value = sqlDataReader[1];
infolist(new Table1()
{
Name = value.ToString(),
});
}
}
cn.Close();
cn.Dispose();
sqlDataReader.Dispose();
ViewBag.Options = infolist
return View("HintExampleView_Layout");
}
<div id="InformationBox">
@foreach (var p in ViewBag.Options)
{
@p.Step2Name
@p.IconHover
}
</div>
<form action="@Url.Action("PartialViewExample", "MyController")" method="post">
<button type="submit" name="submit" id="mybutton">
</button>
<input type="hidden" name="Id_Hidden" value="1" id="AjaxSendId"/>
</form>
<div id="InformationBox"> </div>
return PartialView("HintExampleView_Layout");
$(document).ready(function {
$("#mybutton").mouseover(function () {
alert("Mouseover Test"); /* <- Remove me if working */
$.ajax({
url: "@Url.Action("MyAction","MyController")",
success: function (result) {
$("#InformationBox").html(result); /*<--div id where the results are showing*/
}
});
});
});
$(文档).ready(函数{
$(“#我的按钮”).mouseover(函数(){
alert(“Mouseover Test”);/*谢谢你的帖子…我以前尝试过这个,我的问题是url操作中有错误,错误是“)”预期的..但我不知道为什么,因为我已经验证了所有打开和关闭“()”为什么不创建一个包含选项列表的模型,然后使用返回视图将模型解析到视图中(“HintExampleView_Layout”,myModel);这比使用ViewBag要好得多。您是否可以发布错误的完整堆栈跟踪?还值得注意的是,您的引号是弯曲的,而不是笔直的尝试更新JavaScript中的代码,看看这是否解决了问题problem@AshleyMedway:是的,你是对的…这解决了我的url操作问题…但仍然没有发生任何事情来帮助调试尝试发出警报(“测试”)在您调用ajax以查看mouseover事件是否正在运行之前。但无法从我的控制器获取任何信息。我已设置了一个断点以查看ajax函数是否调用它,但没有。知道吗?您无法在visual studio中调试JavaScript。不幸的是,请在控制器的开始处放置一个断点,这一行位于此处“var id_option=formcollection[“id_Hidden”];”还将return视图更改为return partialview我已经用你的代码更新了我的代码,但仍然没有发生任何事情……我认为他没有访问控制器中的操作确保“MyAction”是你操作的名称,“MyController”是你控制器的名称,例如@Url.action(“Index”,“Home”)")