我有一個windows Dotnet
應用程序與webbrowser
控件。 在一個按鈕上單擊它調用一個javascript
函數與參數和JavaScript嘗試將接收到的參數轉換爲數組。下面是我的C#和JavaScript代碼將c#數組轉換爲javascript數組
public Form1()
{
InitializeComponent();
webBrowser1.DocumentText = @"<html><head>
<script type='text/javascript'>
function doIt(val)
{
data = String(val);
chartval = new Array(data);
//alert('Method Invoked..................' + data);
for (var i = 0; i < chartval.length; i++)
{
alert('invoked.....'+chartval[i]);
}
return 'i did it!';
}
</script>
</head><body>hello!</body></html>";
}
private void button1_Click(object sender, EventArgs e)
{
string tempstring="[abcd],[efgh],[ijkl]";
string []objarr=new string[1];
objarr[0] = tempstring;
object y = webBrowser1.Document.InvokeScript("doIt", objarr);
MessageBox.Show(y.ToString());
}
這裏tempstring
有一千值。我想在tempstring
值轉換爲JavaScript數組
現在我已經警告其文本
invoked..... [abcd],[efgh],[ijkl]
我想3報警並在你的JavaScript文本
invoked..... abcd
invoked..... efgh
invoked..... ijkl
這些''跡象是什麼?我沒有看到任何理由在這裏使用它們,而是使用它們,就好像你有一個二維數組像'[[...],[...],[...]]',我想你只是一個簡單的數組,如'[「abcd」,「efgh」,「ijkl」]',如果我錯了,請糾正我! –
@MehranHatami這只是一個基於我的項目的模型片段。我從系統中獲取這種類型的數組'string tempstring =「[abcd],[efgh],[ijkl]」',所以我使用它,實際上它包含數千個這樣的值。 – madan
可能是一個重複:[加載並傳遞JScript數組到C#(而不是C)COM組件](http://stackoverflow.com/questions/20941906/loading-and-passing-jscript-arrays-from-to-c -sharp-不-C-COM-分量)。 – Noseratio