我正在尝试将dropdown-menu中选定的值参数传递给hidden-field。我跟踪了代码以查看hidden-field值,它总是得到空值。
另外,我还使用浏览器调试器跟踪JavaScript代码,没有发生错误。出什么事了?
JavaScript
$(document).ready(function (e) {
$('.search-panel .dropdown-menu').find('a').click(function (e) {
e.preventDefault();
var param = $(this).attr("href").replace("#", "");
var concept = $(this).text();
$('.search-panel span#search_concept').text(concept);
$('[id$=hdnSearchParam]').val(param);
});
});代码隐藏
protected void btnsearch1_Click(object sender, EventArgs e)
{
grid.DataSource = U.Search(hdnSearchParam.Value, txtsearch.Text);
grid.DataBind();
}标记
<div>
<div class="col-xs-8">
<div class="input-group">
<div class="input-group-btn search-panel">
<button type="button" class="btn btn-default dropdown-toggle"
data-toggle="dropdown">
<span id="search_concept">Filter by</span> <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
<li><a href="#UserName">UserName</a></li>
<li><a href="#its_equal">It's equal</a></li>
<li><a href="#greather_than">Greather than ></a></li>
<li><a href="#less_than">Less than < </a></li>
<li class="divider"></li>
<li><a href="#all">Anything</a></li>
</ul>
</div>
<input type="hidden" name="search_param" value="all" id="search_param" />
<asp:TextBox ID="txtsearch" runat="server"
class="form-control"
name="x"
placeholder="Search term...">
</asp:TextBox>
<span class="input-group-btn">
<asp:LinkButton ID="btnsearch" runat="server"
CssClass="btn btn-primary"
OnClick="btnsearch1_Click">
<span class="glyphicon glyphicon-search"></span>
</asp:LinkButton>
</span>
</div>
</div>
</div>
<asp:HiddenField ID="hdnSearchParam" runat="server" />发布于 2015-09-21 18:40:01
如果不对代码进行更新,就无法从jQuery/Javascript访问ASP.NET控件。ASP.NET在运行时更改控件的id。你有两个选择:
https://stackoverflow.com/questions/32696639
复制相似问题