Javascript 尝试使用jQuery单击asp:LinkButton
我正在寻找一种使用jQuery单击Javascript 尝试使用jQuery单击asp:LinkButton,javascript,jquery,asp.net,ajax,click,Javascript,Jquery,Asp.net,Ajax,Click,我正在寻找一种使用jQuery单击的方法。我还使用了一个带有Yes/No选项的,因此如果用户单击“Yes”,它会触发一个javascript函数,OnOk(),该函数必须单击页面上的save按钮,但它目前没有做任何事情,只是显示警报框: ASP.NET AJAX <asp:LinkButton ID="butSaveAssociation" runat="server" OnClientClick="SaveAssociation();" Text="btnSave" /> <
的方法。我还使用了一个带有Yes/No选项的
,因此如果用户单击“Yes”,它会触发一个javascript函数,OnOk()
,该函数必须单击页面上的save按钮,但它目前没有做任何事情,只是显示警报框:
ASP.NET AJAX
<asp:LinkButton ID="butSaveAssociation" runat="server" OnClientClick="SaveAssociation();" Text="btnSave" />
<asp:ModalPopupExtender BehaviorID="confirmPopup" ID="confirmPopup" runat="server" TargetControlID="butTest"
PopupControlID="ConfirmView" OnOkScript="OnOk();" OnCancelScript="$find('confirmPopup').hide(); return false;" OkControlID="yesButton" CancelControlID="noButton" />
<asp:Panel ID="ConfirmView" runat="server" CssClass="modalPopup" Style="display:none; height:150px; width:250px;">
<center><div>
<table style="margin-left:auto; margin-right:auto;">
<tr>
<td colspan="4" align="left" style="padding-left: 75px; padding-top: 10px;">
Are you sure you want to save the changes?
</td>
</tr>
<br /><br />
<tr>
<td align="left" colspan="1">
<asp:LinkButton ID="yesButton" runat="server" CausesValidation="false" CssClass="YesNoButton" BorderStyle="none" Text="YES">
</asp:LinkButton>
</td>
<td align="right" colspan="1">
<asp:LinkButton ID="noButton" runat="server" CausesValidation="false" CssClass="YesNoButton" BorderStyle="none" Text="NO">
</asp:LinkButton>
</td>
</tr>
</table>
</div></center>
</asp:Panel>
是否确实要保存更改?
JAVASCRIPT W/JQUERY
<script src="~/Scripts/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
function OnOk() {
ClickSaveButton();
}
function ClickSaveButton() {
$('#<%=butSaveAssociation.ClientID %>').click() // not working...
alert('save button clicked.');
}
</script>
函数OnOk(){
单击保存按钮();
}
函数ClickSaveButton(){
$('#')。单击()//不工作。。。
警报('单击保存按钮');
}
编辑
“SaveAssociation()”函数仅用于更改标志,因此它不执行实际的保存:
<script type="text/javascript">
function SaveAssociation() {
setDirty(false);
}
function setDirty(changeVal) {
$("#IsDirty").val(changeVal);
}
</script>
<input type="hidden" id="IsDirty" value="" />
函数SaveAssociation(){
setDirty(假);
}
函数setDirty(changeVal){
$(“#IsDirty”).val(changeVal);
}
此功能只是检查页面上是否有更改,如果有更改,“IsDirty”隐藏字段将设置为true。我需要调用处理“butSaveAssociation”的VB处理程序。如果用户单击“确定”保存更改,请单击“确定”,如回发。为什么不直接调用SaveAssociation()?为什么不直接调用SaveAssociation()?尝试以下操作:
function ClickSaveButton() {
$('#butSaveAssociation').trigger('click');
alert('save button clicked.');
}
试试这个:
function ClickSaveButton() {
$('#butSaveAssociation').trigger('click');
alert('save button clicked.');
}
在这种情况下,我只需调用Joe提到的Save Association。但是,以下选择器将为您提供更好的结果,以供将来参考
$('[id$=butSaveAssociation]').click();
如果您不使用母版页,Neals select也会起作用,但我假设您正在使用母版页,因为您试图获取ClientID。在这种情况下,我只想调用Joe提到的Save Association。但是,以下选择器将为您提供更好的结果,以供将来参考
$('[id$=butSaveAssociation]').click();
如果您不使用母版页,Neals select也会起作用,但我假设您正在使用母版页,因为您试图获取客户ID。我遇到了一个类似的问题,我通过以下方法解决了这个问题:
function clickButton(element)
{
if (element !=null)
{
if (element.click)
{
//IE only
element.click();
}
else
{
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
element.dispatchEvent(evt);
}
}
else
{
//oops..
}
}
这样称呼:
clickButton(document.getElementById('<%=butSaveAssociation.ClientID%>'));
单击按钮(document.getElementById(“”));
我不知道为什么jquery不能工作
这看起来应该很好,但对我也不起作用:
$('#<%=butSaveAssociation.ClientID %>').click();
$('#')。单击();
这可能与宇宙辐射或潮汐有关;-) 我遇到了一个类似的问题,我通过以下方法解决了这个问题:
function clickButton(element)
{
if (element !=null)
{
if (element.click)
{
//IE only
element.click();
}
else
{
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
element.dispatchEvent(evt);
}
}
else
{
//oops..
}
}
这样称呼:
clickButton(document.getElementById('<%=butSaveAssociation.ClientID%>'));
单击按钮(document.getElementById(“”));
我不知道为什么jquery不能工作
这看起来应该很好,但对我也不起作用:
$('#<%=butSaveAssociation.ClientID %>').click();
$('#')。单击();
这可能与宇宙辐射或潮汐有关;-) 由于他试图获取按钮的clientId,我相信他使用的母版页会损坏id。因此,该选择器不起作用。没错,按钮的实际id为“ctl05_butSaveAssociation”,取决于控件的总数。由于他试图获取按钮的clientId,我相信他使用的母版页会损坏id。因此,该选择器不起作用。没错,按钮的实际id是“ctl05_butSaveAssociation”,取决于控件的总数。为了获得正确的id,我最后做了以下操作:$('a[id$=“butSaveAssociation”]')。attr(“id”);为了获得正确的ID,我最后做了以下操作:$('a[ID$=“butSaveAssociation”]').attr(“ID”);