Javascript 如何将参数传递给onclick=";窗口位置“;在李

Javascript 如何将参数传递给onclick=";窗口位置“;在李,javascript,jquery,asp.net-mvc-4,Javascript,Jquery,Asp.net Mvc 4,我在做MVC4 要从模型内部的li onclick窗口中设置参数值。位置 Name=MyValue在这里是硬编码的 如何从使用foreach循环进行迭代的模型中设置参数

我在做MVC4 要从模型内部的
li onclick窗口中设置参数值。位置

Name=MyValue在这里是硬编码的

如何从使用foreach循环进行迭代的模型中设置参数

onclick位于
li
如何在那里设置参数值

改变

window.location='/Mypage?Name=MyValue'

将参数放入新部分

您可以这样做:

<ul class="my_list">
  <li style="position: relative" onclick="myFunction(5);">
  </li>
</ul>
@foreach(var item in Model)
{
    <li style="position: relative" onclick="myFunction(@(item.SomeProperty));">
    </li>
}
用这样的剃刀:

<ul class="my_list">
  <li style="position: relative" onclick="myFunction(5);">
  </li>
</ul>
@foreach(var item in Model)
{
    <li style="position: relative" onclick="myFunction(@(item.SomeProperty));">
    </li>
}
@foreach(模型中的变量项)
{
  • }
    Javascript:

    <script type="text/javascript">
    
    function myFunction(id)
    {
        window.location='/Mypage?Name='+id;
    }
    
    </script>
    
    
    函数myFunction(id)
    {
    window.location='/Mypage?Name='+id;
    }
    

    我正在传递5,但您可以传递其中的一些变量。

    更好的方法是,如果您使用jQuery,您可以使用HTML5的
    数据-*
    属性提供:

    <li style="position: relative" data-name="<% yourValue %>" >
    
    $('.my_list li').on('click', function(){
         window.location = '/Mypage?Name=' + $(this).data('name');
    });
    
  • $('.my_list li')。在('单击',函数()上){ window.location='/Mypage?Name='+$(this.data('Name'); });
  • 您需要在onClick方法中连接参数: 以下是如何:

    <ul class="my_list">
    <%
    name = 'myvalue'
    %>
            <li style="position: relative" onclick="window.location='/Mypage?Name="&name&"">
             </li>
    </ul>
    

    刚刚测试过它正在工作,但是onclick在
    li
    我如何在那里设置我的动态参数值?但是onclick在
    li
    我如何在那里设置我的参数值?但是onclick在
    li
    我如何在那里设置我的参数值?你的意思是我实际上没有得到它我想在foreach how中从模型中设置值我能做吗?在您的答案中,您已将硬代码5设置为值,您只需在其中传递模型属性,而不是5