2014-09-23 43 views
0

jQuery中有一個複雜的函數,如果用戶點擊下面的href,就會運行該函數。有沒有什麼辦法可以在asp窗體後面的代碼中模擬這個點擊?換句話說,我需要從後面的代碼中「點擊」名爲「shipping_question_ID_product_received_as_ordered_link」的href以預填充此輸入。任何人都可以協助我可以在後面的asp代碼中發送「click」到一個href嗎?

<div class="no"><label class="label-1" for="shipping_question_ID_product_received_as_ordered_not_acceptable">Not Acceptable</label></div> 
<a href="#" class="toggle" runat="server" id="shipping_question_ID_product_received_as_ordered_link"></a> 
<div class="yes"><label class="label-2" for="shipping_question_ID_product_received_as_ordered_acceptable">Acceptable</label></div> 
<label class="universal-label"></label> 

<input type="radio" id="shipping_question_ID_product_received_as_ordered_not_acceptable" name="shipping-question-ID-product-received-as-ordered" value="Not Acceptable" runat="server"> 
<input type="radio" id="shipping_question_ID_product_received_as_ordered_acceptable" name="shipping-question-ID-product-received-as-ordered" value="Acceptable" checked="true" runat="server"> 

回答

2

@ArindamNayak有正確的想法「的linkID」,但也有可能。與他的執行問題如果添加下面的腳本代碼隱藏,你會達到什麼樣的,我相信是你想要的結果:

var autoRunScript = string.Format("<script>$(function() {{ $('#{0}').click(); }});</script>", shipping_question_ID_product_received_as_ordered_link.ClientID); 
Page.RegisterClientScriptBlock("keyClientBlock", autoRunScript); 

這裏的區別是,沒有一個ready處理器,jQuery的包裹你的$(link).click()可不正確處理命令。此外,您必須小心使用您使用的ID,因爲它可能會被修改爲包含容器。

+0

我得到「輸入字符串的格式不正確......」 – KateMak 2014-09-23 17:52:26

+0

我忘記在javascript的string.Format中使用double {{}}。抱歉。 – 2014-09-23 17:53:49

+0

你是我的英雄。這工作像一個魅力!非常感謝你,我燉了好幾個小時 – KateMak 2014-09-23 17:54:36

0

您可以使用以下內容。

string jScript; 
    jScript="<script>$('#linkid').click()</script>"; 
    Page.RegisterClientScriptBlock("keyClientBlock",jScript); 

因此,這將編程添加JS代碼塊ASPX和這個JS將執行點擊A HREF(具有ID =

相關問題