gpt4 book ai didi

javascript - 这个示例 CKEditor javascript 函数有什么作用?

转载 作者:行者123 更新时间:2023-11-27 23:19:38 25 4
gpt4 key购买 nike

MVC5

使用此 CKEditor documentation 中的信息我最终能够从 MVC 方法/ View 集成图像选择过程,该方法/ View 显示可以使用 CKEditor 插入到文本区域中的可用图像列表。

虽然最终的解决方案非常简单,但整个过程并不是特别直观。我最终将发布我的解决方案,因为我确信许多相对较新的 MVC 编码人员(例如我自己)正在为此功能寻找简单直接的解决方案。但与此同时,

下面的代码显示了上面链接中示例 2 中的相关行,稍作重新排列。

<body>
<button onclick="returnFileUrl()">Select File</button>
</body>

<script>
function getUrlParam( paramName ) { // Helper function to get parameters from the query string.
var reParam = new RegExp( '(?:[\?&]|&)' + paramName + '=([^&]+)', 'i' );
var match = window.location.search.match( reParam );
return ( match && match.length > 1 ) ? match[1] : null;
}

function returnFileUrl() { // Simulate user action of selecting a file to be returned to CKEditor
var funcNum = getUrlParam( 'CKEditorFuncNum' );
var fileUrl = '/path/to/file.txt';
window.opener.CKEDITOR.tools.callFunction( funcNum, fileUrl );
window.close();
}
</script>

我从来不知道如何使用getUrlParam()。我最终绕过了它,并通过变量 funcNum 传递了传递到我的图像选择器方法中的确切参数。一旦我这样做了,CKEditor 的示例代码就运行得很好。

但是 getUrlParam() 函数是做什么的?我只是名义上理解 RegExp,而这个我完全无法理解。谁能解释一下为什么建议这样做?

最佳答案

getUrlParam需要 paramName (如 q 中的 http://google.com/search.php?q=term ),定义 RegExpparam 匹配并将其值捕获到该方法返回的组 1( match[1] ,例如 term )中。 window.location.search获取 JS 中当前窗口 URL 的查询字符串部分(例如 ?q=term )。

我会用更简单的替换正则表达式定义

var reParam = new RegExp( '[?&]' + paramName + '=([^&]+)', 'i');

生成的正则表达式将类似于 [?&]q=([^&]+)匹配:

  • [?&] - 要么 ?& (在您的原始代码中,它是 (?:[\?&]|&) ,匹配 ?& ,或 & - 因此,我建议缩短)
  • q= - 字符的文字序列 q=
  • ([^&]+) - 第 1 组捕获除 & 之外的一个或多个字符.

在 VB.NET 中,您可以使用以下内容:

Private Shared Function getUrlParam(paramName As String) As String
Dim reParam = "(?i)[?&]" & Regex.Escape(paramName) & "=([^&]+)"
Dim match As Match = Regex.Match("http://google.com/index.php?q=term", reParam)
If match.Success = True And match.Value.Length > 1 Then
Return match.Groups(1).Value
Else
Return String.Empty
End If
End Function

并调用 Dim res As String = getUrlParam("q") .

关于javascript - 这个示例 CKEditor javascript 函数有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35492641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com