小编New*_*013的帖子

Watir得到<span>的INNER html

我试图通过使用类'menu-item-text'迭代一些跨度来找到导航链接.我的目标是比较span标签内的内容,看看它是否是正确的点击导航控件(没有硬件ID.)我的代码是这样的:

navlinks = @browser.spans(:class, 'menu-item')
navlinks.each do |this|
    puts "'#{this.text}'"
    if this.text == link_name
        this.click
    break
end
Run Code Online (Sandbox Code Playgroud)

我知道我确实得到了正确的元素.但是,文本始终为空字符串.我的第二个想法是使用.html而不是.text,但返回的内容如下:

<span class="menu-item">Insights</span>
Run Code Online (Sandbox Code Playgroud)

我想要的是跨度内的"见解"文本,而不是包含标记标记的完整html.我也尝试过使用this.span.text,但这也不起作用.

如何通过watir的内容抓取方法专门定位元素的内部html?

谢谢!

html ruby watir cucumber

3
推荐指数
1
解决办法
2783
查看次数

预加载并禁用EditorFor

我正在用MVC4做一些练习.我的练习项目是一种简单的评论板/论坛,允许注册用户和匿名用户发表评论.

目前,我已经设置了代码,以便即使注册用户也可以在提交小名称+消息表单时输入他们想要的任何名称.我想要的是为注册用户禁用此行为,而不是使用从其登录信息中获取的用户名.

理想情况下,注册用户的名称框中已经加载了用户名并且无法编辑.当表单经过验证时,将使用此用户名,这确保名称和消息都不为空.

这是我的视图中的代码:

<div class="editor-label">
        @Html.LabelFor(x => x.comment.Name)
    </div>
    <div class="editor-field">
        @Html.ValidationMessageFor(x => x.comment.Name)
        <br />
        @if (User.Identity.Name=="") {
            @Html.EditorFor(x => x.comment.Name)
        } else {
            @Html.EditorFor(x => x.comment.Name, Model.PosterName)
        }
    </div>
Run Code Online (Sandbox Code Playgroud)

请注意,Model.PosterName只是将用户的用户名保存为字符串.它不为null或为空.

如何编辑第二个EditorFor行,以便使用Model.PosterName作为默认选项?我是否应该使用DisplayFor代替不可编辑的行为?

我上面编写的代码没有任何值填充EditorFor.

谢谢!

html-helper editorfor asp.net-mvc-4

2
推荐指数
1
解决办法
3009
查看次数

标签 统计

asp.net-mvc-4 ×1

cucumber ×1

editorfor ×1

html ×1

html-helper ×1

ruby ×1

watir ×1