2011-07-03 48 views
0

我想將jQuery選擇器傳遞給Javascript函數服務器端。
這裏是我的JavaScript函數:將jQuery選擇器傳遞給函數服務器端

 function DisableOperations(Selector) { 
     alert(Selector); 

     $(Selector).parent().find('input').attr('disabled', true); 
    } 

而且這是我的服務器端代碼:

string Selectors = "a:contains('test1') a:contains('test2')"; 
ScriptManager.RegisterStartupScript(this, GetType(), "DisplayMessage", string.Format("DisableOperations('{0}');", Selectors), true) 

此代碼不能正常工作(JavaScript函數不會調用),因爲變量選擇包含此(')。
當我寫

string Selectors = "a:contains(test1) a:contains(test2)"; 

jQuery選擇不會因爲「包含」的說法在選擇功能應該是「和」。
解決方案是什麼?

回答

1

你試過var sel = eval(Selector);
首先嚐試轉義您的單引號。 「a:包含(\'test1 \')a:包含(\'test2 \')」

+0

請說明更多。我在哪裏寫這個代碼? – Shahin

+1

首先嚐試轉義您的單引號。 「a:包含(\'test1 \')a:包含(\'test2 \')」 – AlienWebguy

+1

@shaahin:您可能需要兩個'''''來轉義引號。試試'string Selectors =「a:contains(\\'test1 \\')a:contains(\\'test2 \\')」;' –

相關問題