如果文本框位于特定页面上,则在文本框上调用方法

时间:2013-07-30 06:54:53

标签: javascript jquery asp.net-mvc-4

我有一个动态设置为表单中不同文本框的方法。但问题是,如果我在我的视图中名为riskcore.cshtml,我只希望该方法有效。有办法吗?像if(page == riskcore.cshtml){do method}那种代码?

3 个答案:

答案 0 :(得分:2)

您可以在JavaScript中测试网址:

if(/\/riskscore\.chtml$/.test(window.location.pathname)) {
  // You're on riskscore.chtml... Do something
}

答案 1 :(得分:2)

JavaScript通常无法知道服务器端是否或何时使用了特定的视图文件。它只知道视图呈现的结果。

您可以在<div class="riskscore">中包含视图内容,然后在其中选择文本框:

$('.riskscore :text')...

您还在评论中提到,如果没有此视图,其他元素将不存在。您可以将它们用作条件,检查它们是否存在:

if ($('.other-elements').length) {
    // do method
}

根据需要替换'.other-elements'

答案 2 :(得分:1)

您可以使用window.location获取当前位置。或者您可以将location.pathname用于当前路径。

link here

我认为这会有所帮助