2011-07-03 16 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:contains(\ 'test1 \')a:contains(\ 'test2 \')"

+0

詳細を記述してください。どこでこのコードを書く必要がありますか? – Shahin

+1

まず、一重引用符をエスケープしてみてください。 "a:contains(\ 'test1 \')a:contains(\ 'test2 \')" – AlienWebguy

+1

@shaahin:引用符をエスケープするには、おそらく2つの '' \ ''が必要です。 '\\ 'test1 \\')a:contains(\\ 'test2 \\')"; ' –

関連する問題